Surcharge d'opérateur + [class] - C++ - Programmation
Marsh Posté le 27-11-2004 à 12:40:03
ton opérateur + retourne un char[] et non un surcharge_plus.
Tu devrais plutôt avoir ceci donc :
Code :
|
mais ça reste mal. En effet cet operateur modifie this, c'est pas très courant pour un opérateur +. Qui plus est ta chaîne est non terminée par un '\0'. Il faudrait donc mieux que tu gère un tableau de char redimensionnable quand tu ajoutes des caractères et que tu t'assures de toujours terminer la chaîne.
Marsh Posté le 27-11-2004 à 12:42:47
si vous persistez dans la fonctiopn membre, de grâce, marquez la conste ....
Marsh Posté le 28-11-2004 à 18:47:09
Merci...mais:
-Que signifie exactement "return *this" ?
-Je vient de tester une autre façon de faire ma surcharge mais dès que je fait: " exemple = exemple + 'b';", la lettre "a" diparait, pourquoi ?
Code :
|
Marsh Posté le 28-11-2004 à 21:12:31
surcharge_plus operator+(char);
tout ce qu'il faut pas faire ...
Marsh Posté le 28-11-2004 à 21:37:28
Merci du conseil Taz mais qu'est ce qu'il faut faire alors ?
Marsh Posté le 28-11-2004 à 21:41:05
tu fais
TaClasse operator+(const TaClasse &autre) const
et x + 'a' sera évalué comme x.operator+( TaClasse('a') )
Marsh Posté le 27-11-2004 à 11:54:08
Bonjour,
Dans la fonction "main" de mon programme j'ai ceci:
Et j'aimerais bien qu'il me retourne ce résultat: "ab", mais j'y arrive pas
Voici ma classe:
Merci d'avance...