Bonjour à tous,
J'ai le sentiment que ma question est sans doute idiote, mais impossible de trouver la solution !
Alors, je me permet de me tourner ves vous...
J'ai des objets de type T dont je veux faire une liste ordonnée.
J'ai donc défini une relation d'ordre qui porte sur le champ ref_ de T.
Voici une partie de ma classe :
Le problème se pose à l'écriture de la méthode DesT::Ajoute.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
Je veux trouver s'il y a dans ma liste un objet ayant la même ref_ que l'objet à insérer, et si c'est le cas, je veux surcharger cet objet.
Voilà ce que j'ai écrit :
J'ai l'erreur suivante à la ligne marquée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
D'habitude, j'utilise toujours les containeurs de la STL avec des pointeurs,
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
et je n'ai donc jamais vu ce problème... L'accès (*it) ne rend pas une référence sur un objet?
Merci de m'expliquer ce qu'il se passe...
Est-ce interdit de modifier en place un élément d'un std::set ?

 

 
		
		 
         
 

 
			
			


 
   
 


 T& à partir d'un std::set<T>::iterator
 T& à partir d'un std::set<T>::iterator
				 Répondre avec citation
  Répondre avec citation
Partager