English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C++ Operador std <= 使用方法及示例

C++ STL Set ( Conjunto )

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.

Atenção: O operador <= compara os elementos em ordem e a comparação que não corresponderá será interrompida primeiro.

Sintaxe

template<class T, class Compare, class Alloc>
  bool operator<= (const set<T, Compare, Alloc>& lhs,
                    const set<T, Compare, Alloc>& rhs);

Parâmetros

lhs: Primeiro objeto do set.

rhs: Segundo objeto.

Valor de retorno

Se o objeto set da esquerda for menor ou igual ao objeto set da direita, retorne true, caso contrário, retorne false.

Complexo

Se o tamanho de lhs e rhs for diferente, a complexidade permanecerá inalterada.

Caso contrário, o comprimento máximo será lhs e rhs.

Validade do iterador

Sem alteração.

Conflito de dados

Pode acessar os contêineres lhs e rhs.

Acesso simultâneo aos elementos do conjunto não modificado sempre é seguro.

Segurança de exceção

Esta função não levanta exceções.

Exemplo1

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".

Exemplo2

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.

Exemplo3

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.

Exemplo4

#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.

C++ STL Set ( Conjunto )