Modalità di utilizzo e esempio dell'operatore >= in C++ std - Tutorial di base online" />



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

Modalità di utilizzo e esempio dell'operatore >= in C++ std

STL Set(集合)C++

C++ std operatore >=è un'operatore di set in C++Sovraccarico della funzione non membroQuesta funzione viene utilizzata per verificare se l'insieme iniziale è maggiore o uguale a un altro insieme.

Attenzione: l'operatore >= confronta gli elementi dell'insieme in ordine, la comparazione si ferma alla prima non corrispondenza.

sintassi

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

Parametro

lhs: primo oggetto della raccolta.

rhs: secondo oggetto.

Valore di ritorno

Se l'oggetto della raccolta di sinistra è maggiore o uguale all'oggetto della raccolta di destra, restituisce true, altrimenti restituisce false.

Complessità

Se la dimensione di lhs e rhs è diversa, la complessità rimane invariata.

Altrimenti, la lunghezza massima è lhs e rhs.

Validità degli iteratori

Nessuna modifica.

Conflitto di dati

Si può accedere ai contenitori lhs e rhs.

L'accesso contemporaneo agli elementi della raccolta non modificata è sempre sicuro.

Sicurezza delle eccezioni

Questa funzione non lancia eccezioni.

Esempio 1

Vediamo un esempio semplice per verificare se la prima raccolta è maggiore o uguale:

#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 << "La raccolta m1 è maggiore o uguale alla raccolta m2." << endl;
   m2.emplace('b');
   if ( !(m1 >= m2) )
      cout << "La raccolta m1 non è maggiore o uguale alla raccolta m2." << endl;
   return 0;
}

Output:

La raccolta m1 è maggiore o uguale alla raccolta m2.
La raccolta m1 non è maggiore o uguale alla raccolta m2.

Nell'esempio sopra, ci sono due gruppi m1 e m2. m1 e m2 contengono un elemento. Quando confrontiamo due raccolte, visualizzerà il messaggio "La raccolta m1 è maggiore o uguale alla raccolta m2", e dopo aver aggiunto un elemento a m2, visualizzerà il messaggio "La raccolta m1 non è maggiore o uguale alla raccolta m2".

Esempio 2

Guardiamo un esempio semplice:

#include <set>  
#include <iostream>  
  
using namespace std; 
   
int main( )  
{   
   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 << "La raccolta m1 è maggiore o uguale alla raccolta m2." << endl;  
   else  
      cout << "La raccolta m1 è minore della raccolta m2." << endl;  
  
   if ( m1 >= m3 )  
      cout << "La raccolta m1 è maggiore o uguale alla raccolta m3." << endl;  
   else  
      cout << "L'insieme m1 è minore dell'insieme m3." << endl;  
  
   if ( m1 >= m4 )  
      cout << "L'insieme m1 è maggiore o uguale all'insieme m4." << endl;  
   else  
      cout << "L'insieme m1 è minore dell'insieme m4." << endl;  
      
      return 0;
}

Output:

L'insieme m1 è minore dell'insieme m2.
L'insieme m1 è maggiore o uguale all'insieme m3.
L'insieme m1 è maggiore o uguale all'insieme m4.

Esempio 3

Guardiamo un esempio semplice:

#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;
  s2 . insert ( 40 );
  cout << (s1 >= s2) << endl; 
}

Output:

1
0

Nell'esempio sopra, se m1 è maggiore o uguale a m2, restituirà 1, altrimenti restituirà 0.

Esempio 4

#include <set>  
#include <iostream>  
using namespace std; 
  
int main ()  
{  
   set<string> m2;
   typedef set<string> login; 
   
   m2 = {"xyz@123"}; // memorizza id e password
   
   string password;
   login m1;
   
       cout << "---------Login----------" << endl << endl;
       cout << "Inserisci la password:\n"
       cin >> password; // Ottieni il valore
       m1.insert(password); // Mettili in set
     cout << "La password che hai inserito:\n"
     for (auto it = m1.begin(); it != m1.end(); it++) {
        cout << (*it) << endl;
      }
      cout << "Le password memorizzate nel sistema:\n"
     for (auto it = m2.begin(); it != m2.end(); it++) {
        cout << (*it) << endl;
     }
  
   if (m1 >= m2)  
        cout << "\nBenvenuti nella tua pagina..." << endl;
   else  
        cout << "\nPassword errata..." << endl;
      return 0;
}

Output:

1).
---------Login----------
Inserire password: 
xyz@123
Password inserita da lei: 
xyz@123
Password memorizzata nel sistema :
xyz@123
Benvenuto nella sua pagina...
2).
---------Login----------
Inserire password: 
abc@122
Password inserita da lei: 
abc@122
Password memorizzata nel sistema :
xyz@123
Password errata...

In esempio sopra, ci sono due gruppi m1 e m2. m1 contiene le password memorizzate, il secondo gruppo m2 memorizza le password inserite dall'utente. Verifica se m1 è maggiore o uguale a m2. Se la password di m1 è maggiore o uguale a m2, il login avrà successo, altrimenti, il login fallirà.

STL Set(集合)C++