Pourquoi mon set ne se rempli pas
bonjour,
j'ai un probleme pour l'insertion d'objets dans un set...
alors voila à peu près mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
class A {
public :
void insert(string s){
set.insert(s);
//ici, s est bien dans set
}
private :
set<std::string> set;
}
class B {
public :
void createObject(string key, string s){
map.find(key).insert(s);
//mais ici il n'y est plus ...
}
void insert(string s, A a){
map.insert(make_pair(s,a));
}
private :
map<string, A> map;
}
main(){
B b;
A a;
b.createObject("toto",a );
} |
Alors voila le souci: lors de la création d'objet, j'insert dans le set de A un string lorsque l'on ets dans A::insert, le string ets bien inséré mais dès que l'on qui la méthode, le string n'y ets plus ...
Si vous avez besoin de plus d'explications demander, j'essaierai de reformuler mon problème.
Si quelqu'un pouvait m'expliquer ce phénomène et aussi comment y remédier, ce serai cool :D
Merci d'avance pour l'aide apportée