Opérateur de comparaison de surcharge C++ dans

Operateur De Comparaison De Surcharge C Dans



La surcharge d'opérateurs est un concept crucial en C++ qui vous permet d'obtenir la fonctionnalité des opérateurs intégrés tout en travaillant avec des types de données définis par l'utilisateur. Les opérateurs de comparaison en C++ sont ceux qui sont là pour comparer deux valeurs entre elles telles que « == », « != », « > », « < », « >= » et « <= ». Cet article partagera les méthodes de surcharge de ces six opérateurs de comparaison en C++ dans Ubuntu 20.04.

Exemple #1 : Surcharger l'opérateur « == » en C++ :

Pour surcharger l'opérateur '==' en C++, nous avons conçu la classe C++ suivante :







Le nom de notre classe C++ est ProductPrice. Au sein de cette classe, nous avons un « prix » de membre privé. Après cela, nous avons quelques fonctions de membres publics. La première fonction, nommée 'userInput', prend le prix du produit comme entrée de l'utilisateur. Ensuite, nous avons la fonction pour surcharger l'opérateur '==' en C++. Nous avons passé un objet de la classe ProductPrice à cette fonction. Dans cette fonction, nous avons une instruction 'if' qui retournera 'true' si les prix des deux produits sont égaux, sinon 'false'.



Pour tester cela, nous avons la fonction de pilote illustrée dans l'image ci-dessous :







Dans notre fonction « main() », nous avons d'abord créé deux objets de notre classe. Ensuite, nous avons appelé la fonction 'userInput' avec chacun des deux objets un par un pour prendre les prix des deux produits en entrée de l'utilisateur. Après cela, nous avons une instruction 'if' pour imprimer un message si les deux prix sont égaux et un autre message sinon.

Nous avons compilé ce programme en utilisant la commande suivante :



$ g++ OpérateurComparaison.cpp –o OpérateurComparaison

Ensuite, nous l'avons exécuté en utilisant la commande ci-dessous :

$ . / Opérateur de comparaison

Lors de l'exécution de ce code, il nous a été demandé d'entrer le prix du premier produit comme indiqué dans l'image suivante :

Ensuite, il nous a été demandé de saisir le prix du second produit comme indiqué dans l'image ci-dessous :

Puisque nous avons entré les mêmes prix pour les deux produits, nous pouvons voir dans la sortie suivante que notre opérateur '==' a été surchargé avec succès.

Maintenant, pour le tester pour la déclaration 'else', nous avons entré deux prix de produits différents, comme indiqué dans l'image ci-dessous :

Exemple # 2 : Surcharger l'opérateur « != » en C++ :

Pour surcharger l'opérateur « != » en C++, nous avons conçu la classe C++ suivante :

Ce programme ressemble beaucoup à notre premier exemple. La seule différence est que nous avons remplacé partout l'opérateur '==' par l'opérateur '!='.

Pour tester cela, nous avons la fonction de pilote illustrée dans l'image ci-dessous :

Nous avons appelé la fonction 'userInput' dans notre fonction 'main()' avec chacun des deux objets un par un pour prendre les prix des deux produits comme entrée de l'utilisateur. Après cela, nous avons une instruction 'if' pour imprimer un message si les deux prix ne sont pas égaux et un autre message s'ils le sont.

Lorsque nous avons exécuté ce code avec deux prix de produits différents, nous avons compris que notre opérateur d'inégalité avait été surchargé avec succès, comme vous pouvez le voir sur l'image suivante :

Maintenant, pour le tester pour la déclaration 'else', nous avons entré deux prix de produits similaires, comme indiqué dans l'image ci-dessous :

Exemple #3 : Surcharger l'opérateur « > » en C++ :

Pour surcharger l'opérateur '>' en C++, nous avons conçu la classe C++ suivante :

Ce programme est également similaire à nos exemples ci-dessus. La seule différence est que nous avons remplacé partout l'opérateur « != » par l'opérateur « > ».

Pour tester cela, nous avons la fonction de pilote illustrée dans l'image ci-dessous :

Nous avons appelé la fonction 'userInput' dans notre fonction 'main()' avec chacun des deux objets un par un pour prendre les prix des deux produits comme entrée de l'utilisateur. Après cela, nous avons une instruction 'if' pour imprimer un message si le premier prix est supérieur à l'autre et un autre message sinon.

Lorsque nous avons exécuté ce code avec deux prix de produits différents, nous avons compris que notre opérateur supérieur à avait été surchargé avec succès, comme vous pouvez le voir sur l'image suivante :

Maintenant, pour le tester pour la déclaration 'else', nous avons entré deux prix de produits similaires, comme indiqué dans l'image ci-dessous :

Exemple # 4 : Surcharger l'opérateur « < » en C++ :

Pour surcharger l'opérateur '<' en C++, nous avons conçu la classe C++ suivante :

Ce programme est également similaire à nos exemples ci-dessus. La seule différence est que nous avons remplacé partout l'opérateur '>' par l'opérateur '<'.

Pour tester cela, nous avons la fonction de pilote illustrée dans l'image ci-dessous :

Nous avons appelé la fonction 'userInput' dans notre fonction 'main()' avec chacun des deux objets un par un pour prendre les prix des deux produits comme entrée de l'utilisateur. Après cela, nous avons une instruction 'if' pour imprimer un message si le premier prix est inférieur à l'autre et un autre message sinon.

Lorsque nous avons exécuté ce code avec deux prix de produits différents, nous avons compris que notre opérateur inférieur à avait été surchargé avec succès, comme vous pouvez le voir sur l'image suivante :

Maintenant, pour le tester pour la déclaration 'else', nous avons de nouveau saisi deux prix de produits différents, mais cette fois, le prix du premier produit est supérieur au second, comme le montre l'image ci-dessous :

Exemple # 5 : Surcharge de l'opérateur « >= » en C++ :

Pour surcharger l'opérateur '>=' en C++, nous avons conçu la classe C++ suivante :

Ceci est légèrement différent de nos exemples ci-dessus. En surchargeant l'opérateur cette fois, nous avons deux conditions dans l'instruction 'if' séparées par le '||' symbole. Cela signifie que cette déclaration vérifiera si le prix d'un produit est supérieur ou égal à un autre.

Pour tester cela, nous avons la fonction de pilote illustrée dans l'image ci-dessous :

Nous avons appelé la fonction 'userInput' dans notre fonction 'main()' avec chacun des deux objets un par un pour prendre les prix des deux produits comme entrée de l'utilisateur. Après cela, nous avons une instruction 'if' pour imprimer un message si le premier prix est supérieur ou égal à l'autre et un autre message sinon.

Lorsque nous avons exécuté ce code avec deux prix de produits différents, nous avons compris que notre opérateur supérieur ou égal à l'opérateur avait été surchargé avec succès, comme vous pouvez le voir sur l'image suivante :

Maintenant, pour le tester pour la déclaration 'else', nous avons entré le prix du premier produit inférieur au second, comme indiqué dans l'image ci-dessous :

Exemple # 6 : Surcharger l'opérateur « <= » en C++ :

En suivant la même méthode que notre cinquième exemple, nous avons également surchargé l'opérateur « <= », et son code est le suivant :

Les résultats d'exécution de ce programme avec différentes valeurs sont présentés dans les images ci-dessous :

Conclusion:

Cet article expliquait très bien comment vous pouviez surcharger les six opérateurs de comparaison en C++ dans Ubuntu 20.04. Nous avons commencé par une brève introduction sur la surcharge des opérateurs, puis les six opérateurs de comparaison en C++ ont été surchargés. Nous avons utilisé la même classe définie par l'utilisateur pour démontrer toutes ces méthodes. Une fois que vous aurez parcouru ces méthodes, vous pourrez surcharger ces opérateurs de comparaison pour toute autre classe définie par l'utilisateur.