Probleme pour l'utilisation du type list de la STL

tanguy_laverdure Messages postés 34 Date d'inscription mercredi 19 novembre 2003 Statut Membre Dernière intervention 12 mai 2004 - 23 déc. 2003 à 12:10
tanguy_laverdure Messages postés 34 Date d'inscription mercredi 19 novembre 2003 Statut Membre Dernière intervention 12 mai 2004 - 23 déc. 2003 à 14:35
Bonjour,

J'ai 2 classes utilisant les list de STL. La classe RoundTrip contient une liste d'entier, la pas de probleme. La classe Solution contient une list de RoundTrip. Il m'est alors impossible de mettre a jour _RoundTripList lorsque je fait un pushBack() dessus pour ajouter l'intance de l'objet RoundTrip.

Cela veut il dire qu'on ne peut pas creer des listes de liste complexes ? ou alors je m'y prend mal?

Est ce que quelqu'un peut m'aider ?

class RoundTrip
{
public:
RoundTrip();
virtual ~RoundTrip();
std::list GetNodesList();
void UpdateNodesList(int iiNode);
private:
std::list _iNodeslist;
int _iNodeNumber;
};

class Solution
{
public:
Solution();
virtual ~Solution();
void UpdateRoundTripList(RoundTrip iRoundTrip);
private:
std::list<RoundTrip> _RoundTripList;
int _iRoundTripNumber;
};

2 réponses

cs_bouba Messages postés 518 Date d'inscription dimanche 2 décembre 2001 Statut Membre Dernière intervention 10 novembre 2007 3
23 déc. 2003 à 13:51
Salut, quand tu veux faire une liste d'objets complexes réalises une liste de pointeurs sur ces objets.

std::list<RoundTrip*> _RoundTripList;

Voila, ++.
Bouba
0
tanguy_laverdure Messages postés 34 Date d'inscription mercredi 19 novembre 2003 Statut Membre Dernière intervention 12 mai 2004
23 déc. 2003 à 14:35
Merci Bouba pour la réponse,

En fait j'y avais bien penser aussi mais lors de l'execution, quand je passe dans

void Solution::UpdateRoundTripList(RoundTrip* iRoundTrip)
{
_RoundTripList.push_back(iRoundTrip);
_iRoundTripNumber++;
}

j'ai un Unhandle exeption :: acces violation
lors que je fais le push_back et la je ne comprend pas

T'as une idée ?

Merci,
0
Rejoignez-nous