Bonjour,
J'ai ouvert une nouvelle discussion car, après beaucoup de recherches, je ne trouve aucune discussion/forum qui répondent à ma question.
- J'ai une structure de la forme suivante :
- Je souhaite créer une liste de ce type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 typedef struct { int idPipe; list<pair<int,int>> elemNodeList; } PipeElemNode;- Je possède un tuple de la forme : <idPipe, element, node>.
Code : Sélectionner tout - Visualiser dans une fenêtre à part list<PipeElemNode> pipeElemNodeList;myVector est donc mon tuple.
Code : Sélectionner tout - Visualiser dans une fenêtre à part vector<tuple<int,int,int>> myVector = myPipingModel.GetTupleElemNode();
- Mes tuples sont de la forme : <1, 1, 1> <1, 1, 2> <2, 1, 2> ...
Je peux donc avoir plusieurs paires d'élement-Node pour un pipe donné. Dans mon exemple, pour le pipe 1, j'ai la paire <1, 1> et <1,2> d'où mon choix de structure.
- Mon problème : Je n'arrive pas à remplir ma liste pipeElemNodeList. J'arrive à remplir une structure donnée mais pas pour une liste de structure :
Je souhaiterai faire un truc du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 PipeElemNode test; test.idPipe = get<0>(myVector[0]); // Remplissage du premier paramètre de ma structure test.elemNodeList.push_back(make_pair(get<1>(myVector[0]), get<2>(myVector[0]))); // Remplissage de la liste de paire de ma structure for (list<pair<int,int>>::iterator i = test.elemNodeList.begin(); i != test.elemNodeList.end(); i++ ) { cout << (*i).first << " and " << (*i).second << endl; // affichage pour les tests cout << endl << "press any key to continue..."; getchar(); }mais je sais que cette syntaxe n'existe pas. Le tout bien sûr dans une boucle FOR mais la boucle je pense savoir où la mettre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part pipeElemNodeList.push_back(PipeElemNode(Les paramètres de mon struct))
Je ne sais donc pas remplir une liste de structure avec une liste de paire à l'intérieur de cette structure. Je sais que c'est un peu tordu.
Je ne sais pas si j'ai été claire dans mes explications.
Je vous remercie d'avance pour votre aide
Partager