Partage
  • Partager sur Facebook
  • Partager sur Twitter

Surcharge d'operateur

12 juillet 2019 à 9:05:49

Bonjour tout le monde.

Eh ben voila j'ai un petit soucis de comprehension par rapport a la surcharge des operateurs en particulier l'operateur de comparaison (>). Sommes nous obligés de faire un passage par reference constante?

Dans la mesure ou nous ne violons aucune des regles d'encapsulation en faisant un passage par reference tout court ne serait-ce pas utile de pouvoir faire un passage par reference si besoin?  (En fait j'utilise une methode pour  rendre des fractions au meme denominateur #TPZFraction #Mathieu_Nebra donc en faisant l'appel a cette methode dans ma fonction de comparaison situe a l'exterieur de ma classe bah ca me dit en gros que je dois faire passer mes objets de la methode en parametre par reference constante alors j'ai supprime la constante au niveau de la fonction de comparaison(  l 'operateur de comparaison) et ca a fonctionner mais je voudrais savoir si c'est quand meme une bonne methode enfin une bonne pratique.

Merci de votre aide

  • Partager sur Facebook
  • Partager sur Twitter
12 juillet 2019 à 12:00:44

Bonjour

étant donné que tu n'as pas de raison intrinsèque de modifier les deux opérandes, l'aspect const-correctness est un gage de sécurité très intéressant à mettre en place aussi souvent que possible.

Un prédicat ou opérateur de comparaison, n'a, à priori, pas vocation à modifier ses opérandes

Mettre des const , permet donc de créer un code plus sûr.

J'espère t'avoir aidé dans tes recherches.

  • Partager sur Facebook
  • Partager sur Twitter
12 juillet 2019 à 16:07:40

Bonjour, oui je comprends mieux  infiniment Merci.
  • Partager sur Facebook
  • Partager sur Twitter