Partager via


operator== (<memory>)

Teste si les deux objets sont égaux.

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
   );

Paramètres

  • _Left
    Un des objets dont l'égalité doit être testée.

  • _Right
    Un des objets dont l'égalité doit être testée.

  • Ty1
    Le type contrôlé par le pointeur partagé gauche.

  • Ty2
    Le type contrôlé par le pointeur partagé droit.

Valeur de retour

true si les objets sont égaux, false si les objets sont inégaux.

Notes

Le premier opérateur de modèle retourne true. (Tous les allocateurs par défaut sont égaux.)

Les deuxième et troisième opérateurs de modèle retournent _Left.get() == _Right.get().

Exemple

// 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); 
    } 
 
  

Configuration requise

En-tête: <mémoire>

Espace de noms : std

Voir aussi

Référence

auto_ptr, classe

shared_ptr, classe

unique_ptr, classe

Autres ressources

membres d'auto_ptr

shared_ptr::operator==

membres d'unique_ptr