Salut,
Je voudrais savoir s'il était possible d'avoir une classe où on définit une méthode qui a comme argument un objet de cette même classe.
Un exemple ne serait pas de refus![]()
Merci d'avance.
Salut,
Je voudrais savoir s'il était possible d'avoir une classe où on définit une méthode qui a comme argument un objet de cette même classe.
Un exemple ne serait pas de refus![]()
Merci d'avance.
Biensur :
Et par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 class A { void func(A &Obj); private : int x; } void A::func ( A &Obj) { Obj.x = 2*x; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 A Tst; A Truc; Truc.func(tst);
[Balises CODE rajoutées par Loulou24, merci d'y penser à l'avenir]
Mes articles Développez | Dernier article : Raytracer en haskell
Network library : SedNL | Zenol's Blog : http://zenol.fr
N'oubliez pas de consulter la FAQ et les cours et tutoriels.
Merci beaucoup
Un bon exemple pour cette question est l'opérateur de recopie (très utile, notamment pour utiliser certains templates):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 class A { public: A* A(A &source); private: int unEntier; } A* A(A &source) { unEntier = source.unEntier; return this; //utilile pour les trucs du style A* a = (A*) b = (A*) c ... }
1/ Un constructeur par copie prend en général une référence constante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 A* A(A &source) { unEntier = source.unEntier; return this; //utilile pour les trucs du style A* a = (A*) b = (A*) c ... }
2/ Un constructeur, par copie ou non, ne renvoie rien.
3/ "A* a = (A*) b = (A*) c" -> ça compilera peut-être, mais ça ne servira à rien. Et ça n'utilisera en aucun cas une éventuelle valeur de retour du constructeur par copie.
Mieux que SDL : découvrez SFML
Mes tutoriels 2D/3D/Jeux/C++, Cours et tutoriels C++, FAQ C++, Forum C++.
euh ouij'ai fait un gros mix entre l'operateur = et le constructeur de recopie.
Je copierais 100 fois "je ne posterais plus le dimanche!"
(normalement, je ne devrais plus poster le lundi matin non plus...)
Partager