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








Répondre avec citation


Partager