|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité régulier
![]() Étudiant Inscription : mars 2012 Messages : 31 ![]() |
Bonjour,
je suis actuellement en train de suivre le cours C++ sur le site du zero, et j'ai un petit problème : je suis arrivé au chapitres concernant la POO et notamment les opérateurs arithmetiques. tout d'abord dans le .h : Code :
Code :
Duree& operator+=(const Duree &duree); Code :
Duree operator+(Duree const& a, Duree const& b); Code :
je commence à apprécier la POO ce serait dommage de s'arêtter là |
||||
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() |
L'opérateur += travaille sur l'objet courant. Si à la place tu te contentais de surcharger les opérateurs = et + séparément (comme le fait le langage C#) tu te retrouves avec une copie supplémentaire (voire deux). Ce n'est pas génant quand ta classe contient juste un entier, mais quand elle contient un tableau ou une chaîne de caractères.
Au moins, cet exemple est correct. J'ai déjà vu des cours qui mentionnent l'opérateur + mais l'implémentent comme un opérateur +=...
__________________
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant. "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?" Apparently everyone. -- Raymond Chen. Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen. |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com