English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C ++ std Operador <=é C ++No set deOverload de função não membro. Esta função é usada para verificar se o primeiro conjunto é menor ou igual a outro conjunto.
template<class T, class Compare, class Alloc> bool operator<= (const set<T, Compare, Alloc>& lhs, const set<T, Compare, Alloc>& rhs);
lhs: Primeiro objeto do set.
rhs: Segundo objeto.
Se o objeto set da esquerda for menor ou igual ao objeto set da direita, retorne true, caso contrário, retorne false.
Se o tamanho de lhs e rhs for diferente, a complexidade permanecerá inalterada.
Caso contrário, o comprimento máximo será lhs e rhs.
Sem alteração.
Pode acessar os contêineres lhs e rhs.
Acesso simultâneo aos elementos do conjunto não modificado sempre é seguro.
Esta função não levanta exceções.
Vamos ver um exemplo simples, verificar se o primeiro conjunto é menor ou igual a:
#include <iostream> #include <set> using namespace std; int main() { set<char> m1; set<char> m2; m1.emplace('a'); m2.emplace('a'); if (m1 <= m2) cout << "Conjunto m1menor ou igual a m2." << endl; m1.emplace('b'); if (!(m1 <= m2)) cout << "Conjunto m1não menor ou igual a m2." << endl; return 0; }
Saída:
Conjunto m1menor ou igual a m2. Conjunto m1não menor ou igual a m2.
No exemplo acima, há dois grupos de m1e m2m1e m2e que contém um elemento. Quando comparamos dois conjuntos, ele mostrará a mensagem "Conjunto m1Menor ou igual a m2"1ao adicionar um elemento extra, ele mostrará a mensagem "Conjunto m1não menor ou igual a m2".
Vamos ver um exemplo simples:
#include <set> #include <iostream> int main () { using namespace std; set<int> m1, m2, m3, m4; int i; for (i = 1; i <3; i ++) { m1.insert (i); m2.insert (i * i); m3.insert ( i - 1); m4.insert (i); } if (m1 <= m2) cout << "Conjunto m1menor ou igual ao conjunto m2." << endl; else cout << "Conjunto m1maior que o conjunto m2." << endl; if (m1 <= m3) cout << "Conjunto m1menor ou igual ao conjunto m3." << endl; else cout << "Conjunto m1maior que o conjunto m3." << endl; if (m1 <= m4) cout << "Conjunto m1menor ou igual ao conjunto m4." << endl; else cout << "Conjunto m1maior que o conjunto m4." << endl; }
Saída:
Conjunto m1menor ou igual ao conjunto m2. Conjunto m1maior que o conjunto m3. Conjunto m1menor ou igual ao conjunto m4.
Vamos ver um exemplo simples:
#include <iostream> #include <set> using namespace std; int main () { set<int> s1 , s2 ; s1 .insert ( 10 ); s1 .insert ( 20); s1 .insert ( 30); s2 = s1 ; cout << (s1 <= s2 ) << endl; s1 .insert ( 40); cout << (s1 <= s2 ) << endl; }
Saída:
1 0
No exemplo acima, se o conjunto s1menor ou igual a s2então ele retornará1retorna 0.
#include <set> #include <iostream> using namespace std; int main () { set<string> m2; typedef set<string> login; m2.insert("xyz@123)"; //stored password string password; login m1; cout << "---------Login----------"<< endl << endl; cout << "Digite a senha:\n"; cin >> password; // Get value m1.insert(password); // Put them in set cout << "Senha que você digitou:\n"; for (auto it = m1.begin(); it != m1.end(); it++) { cout << (*it << endl; } cout << "Senhas armazenadas no sistema:\n"; for (auto it = m2.begin(); it != m2.end(); it++) { cout << (*it << endl; } if (m2 <= m1) cout << "\nBem-vindo à sua página..." << endl; else cout << "\nSenha incorreta..." << endl; return 0; }
Saída:
1). ---------Login---------- Digite a senha: xyz@123 Senha que você digitou: xyz@123 Senha armazenada no sistema : xyz@123 Bem-vindo à sua página... 2). ---------Login---------- Digite a senha: abc@333 Senha que você digitou: abc@333 Senha armazenada no sistema: xyz@123 Senha incorreta...
No exemplo acima, há dois grupos de m1e m2m1Contém a senha armazenada, o segundo grupo m2Armazena a senha digitada pelo usuário. Ele verifica se m2Se é menor ou igual a m1Se a senha m2Menor ou igual a m1Então, o login foi bem-sucedido, caso contrário, o login falhou.