Operatore di confronto di sovraccarico C ++

Operatore di confronto di sovraccarico C ++
Il sovraccarico è il concetto che consente al programmatore di specificare più di un metodo di diverse funzionalità. Questo non è solo legato ai metodi; Possiamo anche sovraccaricare i numerosi operatori come gli operatori di confronto. Gli operatori sono i simboli che eseguono le operazioni sugli operandi (i valori). Il confronto è quando si confrontano due valori tra loro usando le dichiarazioni decisionali. Sovraccarico l'operatore di confronto significa definire più di una dichiarazione decisionale di confronto. Eseguiamo un confronto di sovraccarico sulle classi quando viene impiegata una classe e fissiamo una condizione nella classe. Al di fuori della classe, fissiamo anche la stessa condizione per gli oggetti. Questo sovraccarica l'operatore. Altrimenti, il compilatore non sarebbe in grado di gestire queste condizioni.

Sintassi del metodo:
Return_type operator operator_symbol ()

Il metodo per un operatore sovraccarico è definito in modo leggermente diverso. È un metodo di tipo reso che contiene l'operatore di parole con l'operatore_symbol che vogliamo sovraccaricare.

Sovraccaricare l'operatore di confronto

Ci sono sei operatori di assegnazione e tutti e sei possono essere sovraccarichi. Questi sono chiamati operatori di confronto perché confrontano due valori o variabili (che memorizza i valori) tra loro. Quando la condizione è soddisfatta, viene eseguita l'operazione successiva. È molto utile sovraccaricare gli operatori quando dobbiamo confrontare i valori tra loro in base a condizioni diverse. I sei operatori di confronto con le funzionalità sono spiegati nella discussione seguente.

1. < - L'operatore inferiore confronta la seguente condizione: se il primo numero intero è inferiore all'altro, eseguire il corpo.

2. > - L'operatore maggiore confronta la seguente condizione: se il primo intero è maggiore del secondo, eseguire il corpo.

3. <= - L'operatore inferiore o uguale confronta la seguente condizione: se il primo termine è inferiore o uguale al secondo, eseguire il corpo.

4. > = - Maggiore o uguale all'operatore confronta la seguente condizione: se il primo termine è maggiore o uguale al secondo, eseguire il corpo.

5. == - Il doppio è uguale controlla se i due numeri interi sono uguali o meno. Se sì, eseguire il corpo. Altrimenti, passare alla prossima dichiarazione.

6. != - L'operatore non uguale valuta se i due termini non sono uguali. Se sì, eseguire il corpo. Altrimenti, la condizione diventa falsa e viene eseguita l'istruzione successiva.

Confrontiamo tutti i valori utilizzando tutti e sei gli operatori di confronto in coppia: =, == e !=.

Sovraccaricare il < and <= Comparison Operators

Confrontiamo i due valori usando "<” and “<=” operators. Then, overload these operators.

Codice:

#includere
Utilizzo dello spazio dei nomi std;
classe meno

Privato:
numero int;
pubblico:
void input_0 ()
CIN >> numero;
operatore int < (Less x)

if (numeroRitorno 1;
altro
restituzione 0;

operatore int <= (Less x)

if (numero<=x.number)
Ritorno 1;
altro
restituzione 0;

;
int main ()

Meno N1, N2;
cout<<"Please enter 1st number. ";
N1. input_0 ();
cout<<"Please enter 2nd number. ";
N2. input_0 ();
if (N1Cout<<"n1 is less than n2. ";
altro se (N1<=n2)
Cout<<"n1 is less than or equal to n2. ";
altro
Cout<<"n1 is not less than or equal to n2. ";
restituzione 0;

In questo codice, incorporare la libreria e lo spazio dei nomi. Definisci una classe "meno" perché in questo esempio, sovraccarichiamo il < (less than) and >"In modo che l'utente possa inserire il numero. Ora, sovraccarico il meno di (<) operator by defining the integer return type function as int operator <(). Within this function, specify an argument of the “Less” class. Next, apply the “if” condition. If the inserted number is less than “x.number”, return 1. Otherwise, return zero.

Sovraccaricare il meno o uguale a (<=) operator by implementing the same steps that we used to overload the (<) operator. Apply the main() function. Inside this, create two objects - “n1” and “n2” - of the “Less” class. Furthermore, use “cout<<” to print a message and call the input_0() method to get the values. Again, execute the “cout<<” and call the same method for object “n2”. Now, compare the first and second numbers. If n1 < n2, execute the body of “if”. And if n1<= n2, execute the body of the “else if”. Otherwise, execute the “else”. This way, we overload the operators.

Produzione:

Inserisci il 1 ° numero. 34
Immettere il 2 ° numero. 223
N1 è inferiore a N2.

Sovraccarico gli operatori di confronto> e> =

Discutiamo del sovraccarico degli operatori ">" e "> =" eseguendo il programma C ++.

Codice:

#includere
Utilizzo dello spazio dei nomi std;
classe maggiore

Privato:
numero int;
pubblico:
void input_0 ()
CIN >> numero;
int operatore> (Greater X)

if (numero> x.numero)
Ritorno 1;
altro
restituzione 0;

int operatore> = (Greater X)

if (numero> = x.numero)
Ritorno 1;
altro
restituzione 0;

;
int main ()

Maggiore N1, N2;
cout<<"Please Enter 1st number. ";
N1. input_0 ();
cout<<"Please Enter 2nd number. ";
N2. input_0 ();
if (n1> n2)
Cout<<"n1 is greater than n2. ";
else if (n1> = n2)
Cout<<"n1 is greater than or equal to n2. ";
altro
Cout<<"n1 is not greater than or equal to n2. ";
restituzione 0;

All'inizio, digita #include e "usando namespace std". Successivamente, crea una classe "maggiore" poiché sovraccarichiamo gli operatori> (maggiore di) e> = (maggiore o uguale) in questo codice. Definire un membro dei dati "numeri" della classe e impostare questo membro dei dati come privato. Quindi, crea un metodo input_0 () per ottenere i valori forniti dall'utente. Questa funzione è impostata per essere pubblica. Ora, l'utente può menzionare il numero utilizzando il comando "CIN >>". Chiamando il metodo del tipo di ritorno intero e passando un argomento della classe "maggiore" a questo metodo, possiamo sovraccaricare l'operatore maggiore di (>). Usa la condizione "if" per restituire 1 se il "numero" è maggiore di "x.numero". Altrimenti, restituisce 0.

Ripeti questa procedura per sovraccaricare l'operatore (> =). Dopo aver chiamato il metodo principale (), crea gli oggetti della classe "maggiore". Eseguire il "cout<<” statement and input_0() function for both objects of the class. Here, compare the input values. If the first condition is satisfied, the “if” body is implemented. If the second condition is satisfied, the “else-if” body is implemented. If no condition is satisfied, execute the “else” part.

Produzione:

Inserisci il 1 ° numero. 432
Immettere il 2 ° numero. 789
N1 non è maggiore o uguale a N2.

Sovraccaricare il == e != Operatori di confronto

Implementa il codice per verificare se due valori sono uguali o meno utilizzando == e !=. Inoltre, mostra come questi operatori sono sovraccarichi.

Codice:

#includere
Utilizzo dello spazio dei nomi std;
classe uguale

Privato:
numero int;
pubblico:
void get_input ()
CIN >> numero;
int operatore == (uguale x)

if (numero == x.numero)
Ritorno 1;
altro
restituzione 0;

operatore int != (Uguale x)

if (numero!= x.numero)
Ritorno 1;
altro
restituzione 0;

;
int main ()

Uguale N1, N2;
cout<<"Please enter 1st number. ";
N1.Get_input ();
cout<<"Please enter 2nd number. ";
N2.Get_input ();
if (N1 == N2)
Cout<<"n1 is equal to n2. ";
altro se (N1!= N2)
Cout<<"n1 is not equal to n2. ";
altro
Cout<<"Sorry ";
restituzione 0;

Nella prima dichiarazione, incorporare la biblioteca. Insieme a questo, usa lo "Spazio dei nomi". Una classe "uguale" viene creata per sovraccaricare il (uguale) e != (non uguale) operatori. Definire una variabile "numero" con un tipo INT e definire il metodo get_input (). Ora usa "CIN >>" per ottenere l'intero dall'utente. Dopo questo, sovraccaricare l'essere (=) e non uguale (!=) operatori impiegando le funzioni del tipo intero e impostare l'operatore sovraccarico su == e != nel corpo di queste funzioni. Inoltre, utilizzare il metodo principale () per creare gli oggetti della classe "uguale". Ottieni i valori digitati dell'utente chiamando due volte la funzione get_input (). Confronta questi valori per verificare se sono uguali o non uguali. Non abbiamo bisogno di sovraccaricare gli operatori uguali e non uguali perché se i valori sono uguali, viene eseguito un operatore uguale sovraccarico. In caso contrario, il "else se" visualizzerà un messaggio sul terminale. Ma, per spiegare il funzionamento di entrambi i metodi qui, definiamo i due metodi sovraccarichi.

Produzione:

Inserisci il 1 ° numero. 45
Immettere il 2 ° numero. 45
N1 è uguale a N2.

Conclusione

Questa guida mostra un'informazione su cosa sono gli operatori di confronto e su come possiamo sovraccaricarli in C++. Operatore di sovraccarico dell'operatore di confronto è così facile e semplice, è come sovraccaricare un metodo. Ma qui, menzioniamo il nome dell'operatore sovraccarico con la parola chiave "operatore". Tutti gli operatori di confronto sono sovraccarichi nei codici di questa guida.