Bonsoir � tous,
Je voulais savoir par quel moyen peut-on en c++ copier une instance d'une classe en modifiant certains de ces attributs; je m'explique: j'ai une classe Chat et je veux via une m�thode Chat reproduction() copier une instance c1 en modifiant certains de ses attributs. Imaginons que mon chat a un attribut string couleur initialis� � "noir" et un attribut int vie initialis� � 7 et qu'en faisant Chat c2 = c1.reproduction(); cela me cr�e un nouveau chat c2 ayant une couleur grise mais qu'en m�me temps c1 perde 1 point de vie. J'ai essay� de d�cr�menter l'attribut force directement via le constructeur ou le constructeur de recopie sans succ�s car cela m'initialise le chat initial (c1) avec une force d�j� r�trograd�e avant reproduction (c1.force = 7) ce qui n'est conforme � ce qui est attendu, c'est � dire c1.force = 7.
Merci pour votre aide.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10 public: Chat (string nom = "Miaou", int force = 7, string couleur = "noir") : nom(nom), force(force), couleur(couleur) { } Chat (Chat const& c) : nom(c.nom), force((c.force)), couleur(c.couleur) {
Bien cordialement,
IT
Partager