Salut à tous!!!
bon j'ai un tit soucis, et si quelqu'un pouvait m'éclairer, ce serait super sympa...
D'une part, j'ai une classe définissant un objet CExposition (avec un destructeur explicité).
D'autre part, j'ai un fichier qui contient une fonction calculExposition() ne prenant rien en argument et retournant un objet CExposition.
Et finalement dans mon main, afin de tester, j'ai codé un truc du genre :
CExposition test = calculExposition();
Et là, j'ai un problème, dans ma fonction tout se passe normalement jusqu'au return, et là patatra, lorsque le programme sort du corps de la fonction il y a un appel du destructeur de CExposition (sans que je le demande bien sur, hehe)...
J'imagine que c'est à cause de la copie... est ce bien cela? et que faire?
(j'ai déjà trouvé qulques feintes qui le permettent de réaliser ce que je veux faire, mais cela ne m'éclaire pas sur les raisons...)
De plus, dans un message précédent, on m'a précisé que pour avoir une classe bien conçue, je dois recoder l'operateur de copie...
Alors je vais poser une question conne, mais l'opérateur de copie est bien l'opérateur '=', c'est bien cela? et une manière de le coder serait pour la meme classe d'objet
const CExposition& CExposition::operator=(const CExposition& expo)
{
_argMembre1 = expo._argMembre1;
_argMembre2 = expo._argMembre2;
...
return *this;
}
Cela convient-il?
Merci d'avance
Peupeu