Bonjour,
Mon programme plante lorsque j'utilise directement le membre list "facts" pour le remplir via la fonction setFactsList2.
Voici le code :
Lorsque je commente la ligne "facts.push_back(*(i));", l'execution fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
30
31
32 Entity.h : class Entity { public : int id; string name; list <Fact> facts; //facts public : ... void setFactsList2(const std::list<Fact>& newFacts); } Entity.cc : void Entity::setFactsList2(const std::list<Fact>& newFacts) { for (std::list<Fact>::const_iterator i = newFacts.begin(); i != newFacts.end(); ++i) { facts.push_back(*(i)); } } void Entity::addFacts(list<Fact> factsSource, Entity *entity){ list<Fact> factsDest = entity->getFactsList(); unit(factsSource, &factsDest); entity->setFactsList2(factsDest); }
Auriez vous une idée sur l'origine du problème ?
Merci d'avance.
Partager