operator== (<memory>)
Test di uguaglianza tra gli oggetti.
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
);
Parametri
_Left
Uno degli oggetti per verificare l'uguaglianza._Right
Uno degli oggetti per verificare l'uguaglianza.Ty1
Il tipo esaminato a sinistra condiviso il puntatore.Ty2
Il tipo esaminato dal puntatore condiviso di destra.
Valore restituito
true se gli oggetti sono uguali, false se gli oggetti non sono uguali.
Note
Il primo operatore del modello restituisce true. (Tutti gli allocatori predefiniti sono uguali.)
Il secondo e il terzo operatori del modello restituiscono _Left.get() == _Right.get().
Esempio
// 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);
}
Requisiti
Header: <memory>
Spazio dei nomi: std