c++ , classes et heritage - C++ - Programmation
Marsh Posté le 07-02-2003 à 19:38:21
remplace ton (A)(*this) = (A)b par
Code :
|
Sinon, attention quand tu fais strcpy(p_char2,b.p_char2), si les 2 chaines ne sont pas de meme taille, tu vas avoir des problèmes.
De manière générale, il vaut mieux écrire les opérateurs d'affectation ainsi:
Code :
|
ca évite les problèmes liés à l'autoaffectation (a=a) quand tu manipules des pointeurs.
Marsh Posté le 10-02-2003 à 11:06:34
Attention, tu risques d'avoir des problèmes mémoire lors des désallocations, et des surprises si tu ajoutes des fonctions membres dans A que tu redéfinis dans B : il faut déclarer tout ça virtuel (dans A).
Marsh Posté le 07-02-2003 à 16:51:34
voila, jai une class B qui herite de A :
lors de lappel a la fonction = pour recopier le contenu d'un objet de type B vers B, j'ai ajouter une ligne pour recopier aussi A (puisque B en herite) :
l'appel au l'op = du A est bel et bien appelle mais le contenu de A reste inchangé
B x;
B y;
y = x;
Message édité par red faction le 07-02-2003 à 16:59:37