Retour d'objet dans une methode
Bonjour à tous,
Ca fait un baille que je n'utilise plus C++ et il y a un point tout bête qui me chagrine.
Si j'ai la méthode suivant :
Code:
1 2 3 4 5 6
|
MonObjet MaClasse::methode() {
MonObjet mo;
return mo;
} |
que j'appelle ailleurs de la façon suivante :
Code:
1 2 3 4 5
|
MonObjet a;
MaClasse mc;
a = mc.methode(); |
Vous allez tous me dire que ce n'est pas bien du tout car l'objet mo dans la méthode "methode" est local à la méthode et donc va être détruit et qu'il faudrait passer un pointeur ou une référence.
Mais je m'interroge sur le fait que puisque le compilateur crée un opérateur d'affectation par défaut qui copie les valeurs membres à membres, est-ce l'objet "a" a reçu les valeurs des membres de l'objet "mo" ?
Merci.