problème avec un vector d'objets contenant des iterators
Bonjour,
J'ai passé un moment à parcourir le forum mais n'ai pas trouvé la réponse. Ma question reprend un peu les derniers échanges de mon dernier post, mais comme cela n'a rien à voir avec le titre, je me permets d'ouvrir une nouvelle discussion.
J'ai une classe:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
Class A{
list<int> m_List;
list<int>::iterator m_element;
public:
A(list<int>&)
};
A::A(list<int>& list){
m_List = list;
m_element=m_List.begin();
} |
J'ai besoin de m_element parce que je crée ensuite un vector de A, et j'ai besoin de savoir pour chaque liste quel est l'élément courant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
Class B{
vector<A> m_Vect;
public:
B(list<int>&)
};
B::B(list<int>& list){
A a(list);
vector<A> vecttemp;
vecttemp.push_back(a);
m_Vect=vecttemp;
} |
Avec ce code, m_element de a pointe sur le premier élément de m_List. Quand je fais (dans le constructeur de B) vecttemp.push_back(a), m_element "ne bouge pas", alors que bien entendu, ce qui m'intéresserait, c'est qu'il indique maintenant m_Vect[0].m_List.begin(). Existe-t-il une solution sans devoir le lui écrire explicitement dans le constructeur de B?
Merci beaucoup