Bonjour,
J'ai un problème avec un getter et je ne comprends absolument pas pourquoi.
Je vais essayer d'exposer la situation.
Si on a une classe Conteneur par exemple:
Un classe Objet qui contient des paramètres:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
Et donc une classe paramètres:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
Maintenant si on ajoute une méthode pour initialiser l'attribut m_obj:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
Et que dans Object.cpp:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
Param.cpp:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
Le problème et le suivant
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
* lorque j'initialise les paramètres à travers le constructeur et qu'ensuite on lit ces valeurs (avec un getter, par exemple getP1()) il n'y a pas de problème, la valeur à bien été initialisée
* par contre, si après l'initilisation je modifie une valeur d'un paramètre (par un setter) et que je lis ensuite la valeurs du paramètre, la valeur renvoyée est celle initialisée par le construteur et non celle modifiée par le setter, exemple:
Quand j'affiche la valeur dans le setter de la classe Param, j'ai bien 3.14, mais dès qu'on accède à la valeur par le getter, il renvoie toujours la valeur initialisée dans le constructeur, à savoir 1.5.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
Y a vraiment quelque chose qui m'échappe.
Merci de votre aide.

 

 
		
		 
         
 

 
			
			


 
			

 Accesseur d'une variable membre (setter)
 Accesseur d'une variable membre (setter)
				 Répondre avec citation
  Répondre avec citation 
  
  
 
 
 
 
   
 

 
				 Envoyé par Neckara
 Envoyé par Neckara
					


 
  
			 
  
 ),doit etre directement appelé depuis ton objet, et non depuis l'accesseur sur la variable que tu essayes de modifier
),doit etre directement appelé depuis ton objet, et non depuis l'accesseur sur la variable que tu essayes de modifier  A méditer: La solution la plus simple est toujours la moins compliquée
A méditer: La solution la plus simple est toujours la moins compliquée


 
						
Partager