Partilhar via


<unordered_set> operadores

O <unordered_set> cabeçalho fornece os seguintes operadores:

operator!=

Testa se o unordered_set objeto no lado esquerdo do operador não é igual ao unordered_set objeto no lado direito.

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

Parâmetros

left
Um objeto do tipo unordered_set.

right
Um objeto do tipo unordered_set.

Valor de retorno

true se os unordered_sets não são iguais, false se são iguais.

Observações

A comparação entre unordered_set objetos não é afetada pela ordem arbitrária em que eles armazenam seus elementos. Dois unordered_sets são iguais se tiverem o mesmo número de elementos e os elementos em um recipiente forem uma permutação dos elementos no outro recipiente. Caso contrário, são desiguais.

Exemplo

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

int main()
{
    using namespace std;

    unordered_set<char> c1, c2, c3;

    c1.insert('a');
    c1.insert('b');
    c1.insert('c');

    c2.insert('c');
    c2.insert('a');
    c2.insert('d');

    c3.insert('c');
    c3.insert('a');
    c3.insert('b');

   cout << boolalpha;
   cout << "c1 != c2: " << (c1 != c2) << endl;
   cout << "c1 != c3: " << (c1 != c3) << endl;
   cout << "c2 != c3: " << (c2 != c3) << endl;

    return (0);
}
c1 != c2: true
c1 != c3: false
c2 != c3: true

operator==

Testa se o unordered_set objeto no lado esquerdo do operador é igual ao unordered_set objeto no lado direito.

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

Parâmetros

left
Um objeto do tipo unordered_set.

right
Um objeto do tipo unordered_set.

Valor de retorno

true se os unordered_sets são iguais, false se não são iguais.

Observações

A comparação entre unordered_set objetos não é afetada pela ordem arbitrária em que eles armazenam seus elementos. Dois unordered_sets são iguais se tiverem o mesmo número de elementos e os elementos em um recipiente forem uma permutação dos elementos no outro recipiente. Caso contrário, são desiguais.

Exemplo

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

int main()
{
    using namespace std;

    unordered_set<char> c1, c2, c3;

    c1.insert('a');
    c1.insert('b');
    c1.insert('c');

    c2.insert('c');
    c2.insert('a');
    c2.insert('d');

    c3.insert('c');
    c3.insert('a');
    c3.insert('b');

   cout << boolalpha;
   cout << "c1 == c2: " << (c1 == c2) << endl;
   cout << "c1 == c3: " << (c1 == c3) << endl;
   cout << "c2 == c3: " << (c2 == c3) << endl;

    return (0);
}
c1 == c2: false
c1 == c3: true
c2 == c3: false

operator!= (multiset)

Testa se o unordered_multiset objeto no lado esquerdo do operador não é igual ao unordered_multiset objeto no lado direito.

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

Parâmetros

left
Um objeto do tipo unordered_multiset.

right
Um objeto do tipo unordered_multiset.

Valor de retorno

true se os unordered_multisets não são iguais, false se são iguais.

Observações

A comparação entre unordered_multiset objetos não é afetada pela ordem arbitrária em que eles armazenam seus elementos. Dois unordered_multisets são iguais se tiverem o mesmo número de elementos e os elementos em um recipiente forem uma permutação dos elementos no outro recipiente. Caso contrário, são desiguais.

Exemplo

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

int main()
{
    using namespace std;

    unordered_multiset<char> c1, c2, c3;

    c1.insert('a');
    c1.insert('b');
    c1.insert('c');
    c1.insert('c');

    c2.insert('c');
    c2.insert('c');
    c2.insert('a');
    c2.insert('d');

    c3.insert('c');
    c3.insert('c');
    c3.insert('a');
    c3.insert('b');

   cout << boolalpha;
   cout << "c1 != c2: " << (c1 != c2) << endl;
   cout << "c1 != c3: " << (c1 != c3) << endl;
   cout << "c2 != c3: " << (c2 != c3) << endl;

    return (0);
}
c1 != c2: true
c1 != c3: false
c2 != c3: true

operator== (multiset)

Testa se o unordered_multiset objeto no lado esquerdo do operador é igual ao unordered_multiset objeto no lado direito.

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

Parâmetros

left
Um objeto do tipo unordered_multiset.

right
Um objeto do tipo unordered_multiset.

Valor de retorno

true se os unordered_multisets são iguais, false se não são iguais.

Observações

A comparação entre unordered_multiset objetos não é afetada pela ordem arbitrária em que eles armazenam seus elementos. Dois unordered_multisets são iguais se tiverem o mesmo número de elementos e os elementos em um recipiente forem uma permutação dos elementos no outro recipiente. Caso contrário, são desiguais.

Exemplo

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

int main()
{
    using namespace std;

    unordered_multiset<char> c1, c2, c3;

    c1.insert('a');
    c1.insert('b');
    c1.insert('c');
    c1.insert('c');

    c2.insert('c');
    c2.insert('c');
    c2.insert('a');
    c2.insert('d');

    c3.insert('c');
    c3.insert('c');
    c3.insert('a');
    c3.insert('b');

   cout << boolalpha;
   cout << "c1 == c2: " << (c1 == c2) << endl;
   cout << "c1 == c3: " << (c1 == c3) << endl;
   cout << "c2 == c3: " << (c2 == c3) << endl;

    return (0);
}
c1 == c2: false
c1 == c3: true
c2 == c3: false