operator== (<memory>)

Comprueba la igualdad entre los objetos.

template<class Type, class Other>
   bool operator==(
      const allocator<Type>& _Left,
      const allocator<Other>& _Right
   ) throw();
template<class Ty1, class Del1, class Ty2, class Del2>
    bool operator==(
        const unique_ptr<Ty1, Del1>& _Left,
        const unique_ptr<Ty2, Del2>& _Right
    );
template<class Ty1, class Ty2>
    bool operator==(
      const shared_ptr<Ty1>& _Left;,
      const shared_ptr<Ty2>& _Right
   );

Parámetros

  • _Left
    Uno de los objetos que se van a comprobar para comprobar la igualdad.

  • _Right
    Uno de los objetos que se van a comprobar para comprobar la igualdad.

  • Ty1
    El tipo controla el puntero compartido izquierdo.

  • Ty2
    El tipo controla el puntero compartido correspondiente.

Valor devuelto

true si los objetos son iguales, false si los objetos no son iguales.

Comentarios

El primer operador de la plantilla devuelve true. (Todos los asignadores predeterminados son iguales).

El segundo y tercer operadores de la plantilla devuelve _Left.get() == _Right.get().

Ejemplo

// memory_op_eq.cpp
// compile with: /EHsc
#include <memory>
#include <iostream>
#include <vector>

using namespace std;

int main( ) 
{
   allocator<char> Alloc;
   vector <int>:: allocator_type v1Alloc;

   allocator<char> cAlloc(Alloc); 
   allocator<int> cv1Alloc(v1Alloc);

   if ( cv1Alloc == v1Alloc )
      cout << "The allocator objects cv1Alloc & v1Alloc are equal."
           << endl;
   else
      cout << "The allocator objects cv1Alloc & v1Alloc are not equal."
           << endl;

   if ( cAlloc == Alloc )
      cout << "The allocator objects cAlloc & Alloc are equal."
           << endl;
   else
      cout << "The allocator objects cAlloc & Alloc are not equal."
           << endl;
}
  

 

// std_tr1__memory__operator_eq.cpp 
// compile with: /EHsc 
#include <memory> 
#include <iostream> 
 
int main() 
    { 
    std::shared_ptr<int> sp0(new int(0)); 
    std::shared_ptr<int> sp1(new int(0)); 
 
    std::cout << "sp0 == sp0 == " << std::boolalpha 
        << (sp0 == sp0) << std::endl; 
    std::cout << "sp0 == sp1 == " << std::boolalpha 
        << (sp0 == sp1) << std::endl; 
 
    return (0); 
    } 
 
  

Requisitos

Encabezado: <memory>

Espacio de nombres: std

Vea también

Referencia

auto_ptr (Clase)

shared_ptr (Clase)

unique_ptr (Clase)

Otros recursos

miembros auto_ptr

shared_ptr::operator==

miembros unique_ptr