Bonjour à tous,
Après avoir créer l'objet Map dans mon vector, je désire récupérer simplement son nom via la méthode getMapName() (Map.h/Map.cpp) mais le programme plante.
L'executable plante à la ligne 13: v_maps.back()->getMapName() avec ce message :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 using namespace std; [...] string map_name = ""; vector<Map*> v_maps; [...] cout << "Give it a name: "; cin >> map_name; v_maps.push_back(new Map(map_name)); cout << "Object ''" << v_maps.back()->getMapName() << "' well created." << endl << endl; //L'executable plante ici
Je me rend alors sur le header vector ligne 97 :
Fichier vector - ligne 97 :
Je pensais qu'avec <vector>.back() je pouvait récupérer le dernier élément du vector sans passer par une boucle avec incrémentation d'un itérateur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 {// report error _DEBUG_ERROR("vector iterator not incrementable"); }
Ou alors je fais fausse route...
Des idées ?
Partager