Udostępnij przez


<unordered_map>, operatory

unordered_map::operator!=
unordered_map::operator==
unordered_multimap::operator!=
unordered_multimap::operator==

operator!=

Sprawdza, czy obiekt unordered_map po lewej stronie operatora nie jest równy obiektowi unordered_map po prawej stronie.

bool operator!=(const unordered_map <Key, Type, Hash, Pred, Allocator>& left, const unordered_map <Key, Type, Hash, Pred, Allocator>& right);

Parametry

Lewej
Obiekt typu unordered_map.

Prawo
Obiekt typu unordered_map.

Wartość zwracana

true jeśli unordered_maps nie są równe; false jeśli są równe.

Uwagi

Porównanie obiektów unordered_map nie ma wpływu na dowolną kolejność przechowywania ich elementów. Dwie unordered_maps są równe, jeśli mają taką samą liczbę elementów, a elementy w jednym kontenerze są permutacją elementów w drugim kontenerze. W przeciwnym razie są one nierówne.

Przykład

// unordered_map_op_ne.cpp
// compile by using: cl.exe /EHsc /nologo /W4 /MTd
#include <unordered_map>
#include <iostream>
#include <ios>

int main( )
{
   using namespace std;
   unordered_map<int, int> um1, um2, um3;

   for ( int i = 0 ; i < 3 ; ++i ) {
      um1.insert( make_pair( i+1, i ) );
      um1.insert( make_pair( i, i ) );

      um2.insert( make_pair( i, i+1 ) );
      um2.insert( make_pair( i, i ) );

      um3.insert( make_pair( i, i ) );
      um3.insert( make_pair( i+1, i ) );
   }

   cout << boolalpha;
   cout << "um1 != um2: " << (um1 != um2) << endl;
   cout << "um1 != um3: " << (um1 != um3) << endl;
   cout << "um2 != um3: " << (um2 != um3) << endl;
}

/* Output:
um1 != um2: true
um1 != um3: false
um2 != um3: true
*/

operator==

Sprawdza, czy obiekt unordered_map po lewej stronie operatora jest równy obiektowi unordered_map po prawej stronie.

bool operator==(const unordered_map <Key, Type, Hash, Pred, Allocator>& left, const unordered_map <Key, Type, Hash, Pred, Allocator>& right);

Parametry

Lewej
Obiekt typu unordered_map.

Prawo
Obiekt typu unordered_map.

Wartość zwracana

true jeśli unordered_maps są równe; false jeśli nie są równe.

Uwagi

Porównanie obiektów unordered_map nie ma wpływu na dowolną kolejność przechowywania ich elementów. Dwie unordered_maps są równe, jeśli mają taką samą liczbę elementów, a elementy w jednym kontenerze są permutacją elementów w drugim kontenerze. W przeciwnym razie są one nierówne.

Przykład

// unordered_map_op_eq.cpp
// compile by using: cl.exe /EHsc /nologo /W4 /MTd
#include <unordered_map>
#include <iostream>
#include <ios>

int main( )
{
   using namespace std;
   unordered_map<int, int> um1, um2, um3;

   for ( int i = 0 ; i < 3 ; ++i ) {
      um1.insert( make_pair( i+1, i ) );
      um1.insert( make_pair( i, i ) );

      um2.insert( make_pair( i, i+1 ) );
      um2.insert( make_pair( i, i ) );

      um3.insert( make_pair( i, i ) );
      um3.insert( make_pair( i+1, i ) );
   }

   cout << boolalpha;
   cout << "um1 == um2: " << (um1 == um2) << endl;
   cout << "um1 == um3: " << (um1 == um3) << endl;
   cout << "um2 == um3: " << (um2 == um3) << endl;
}

/* Output:
um1 == um2: false
um1 == um3: true
um2 == um3: false
*/

operator!= (multimap)

Sprawdza, czy obiekt unordered_multimap po lewej stronie operatora nie jest równy obiektowi unordered_multimap po prawej stronie.

bool operator!=(const unordered_multimap <Key, Type, Hash, Pred, Allocator>& left, const unordered_multimap <Key, Type, Hash, Pred, Allocator>& right);

Parametry

Lewej
Obiekt typu unordered_multimap.

Prawo
Obiekt typu unordered_multimap.

Wartość zwracana

true jeśli unordered_multimaps nie są równe; false jeśli są równe.

Uwagi

Porównanie obiektów unordered_multimap nie ma wpływu na dowolną kolejność przechowywania ich elementów. Dwie unordered_multimaps są równe, jeśli mają taką samą liczbę elementów, a elementy w jednym kontenerze są permutacją elementów w drugim kontenerze. W przeciwnym razie nie są równe.

Przykład

// unordered_multimap_op_ne.cpp
// compile by using: cl.exe /EHsc /nologo /W4 /MTd
#include <unordered_map>
#include <iostream>
#include <ios>

int main( )
{
   using namespace std;
   unordered_multimap<int, int> um1, um2, um3;

   for ( int i = 0 ; i < 3 ; ++i ) {
      um1.insert( make_pair( i, i ) );
      um1.insert( make_pair( i, i ) );

      um2.insert( make_pair( i, i ) );
      um2.insert( make_pair( i, i ) );
      um2.insert( make_pair( i, i ) );

      um3.insert( make_pair( i, i ) );
      um3.insert( make_pair( i, i ) );
   }

   cout << boolalpha;
   cout << "um1 != um2: " << (um1 != um2) << endl;
   cout << "um1 != um3: " << (um1 != um3) << endl;
   cout << "um2 != um3: " << (um2 != um3) << endl;
}

/* Output:
um1 != um2: true
um1 != um3: false
um2 != um3: true
*/

operator== (multimap)

Sprawdza, czy obiekt unordered_multimap po lewej stronie operatora jest równy obiektowi unordered_multimap po prawej stronie.

bool operator==(const unordered_multimap <Key, Type, Hash, Pred, Allocator>& left, const unordered_multimap <Key, Type, Hash, Pred, Allocator>& right);

Parametry

Lewej
Obiekt typu unordered_multimap.

Prawo
Obiekt typu unordered_multimap.

Wartość zwracana

true jeśli unordered_multimaps są równe; false jeśli nie są równe.

Uwagi

Porównanie obiektów unordered_multimap nie ma wpływu na dowolną kolejność przechowywania ich elementów. Dwie unordered_multimaps są równe, jeśli mają taką samą liczbę elementów, a elementy w jednym kontenerze są permutacją elementów w drugim kontenerze. W przeciwnym razie są one nierówne.

Przykład

// unordered_multimap_op_eq.cpp
// compile by using: cl.exe /EHsc /nologo /W4 /MTd
#include <unordered_map>
#include <iostream>
#include <ios>

int main( )
{
   using namespace std;
   unordered_multimap<int, int> um1, um2, um3;

   for ( int i = 0 ; i < 3 ; ++i ) {
      um1.insert( make_pair( i, i ) );
      um1.insert( make_pair( i, i ) );

      um2.insert( make_pair( i, i ) );
      um2.insert( make_pair( i, i ) );
      um2.insert( make_pair( i, i ) );

      um3.insert( make_pair( i, i ) );
      um3.insert( make_pair( i, i ) );
   }

   cout << boolalpha;
   cout << "um1 == um2: " << (um1 == um2) << endl;
   cout << "um1 == um3: " << (um1 == um3) << endl;
   cout << "um2 == um3: " << (um2 == um3) << endl;
}

/* Output:
um1 == um2: false
um1 == um3: true
um2 == um3: false
*/

Zobacz też

<Unordered_map>