Je suis occupé à implémenter un Graph ADT en C++. J'ai des modèles pour les bords et les sommets. À chaque sommet, j'ai un vecteur contenant des pointeurs vers les bords qui lui sont incidents. Maintenant, j'essaie d'obtenir un itérateur sur ces bords. Ce sont les lignes de code:Comment puis-je obtenir un itérateur sur un vecteur d'objets à partir d'un modèle?
vector<Edge<edgeDecor, vertexDecor, dir>*> edges = this->incidentEdges();
vector<Edge<edgeDecor, vertexDecor, dir>*>::const_iterator i;
for (i = edges.begin(); i != edges.end(); ++i) {
Cependant, le compilateur n'acceptera pas la ligne du milieu. Je suis assez nouveau en C++. Est-ce que je manque quelque chose? Pourquoi ne puis-je pas déclarer un itérateur sur des objets du modèle Edge? Le compilateur ne donne aucun retour utile.
Une grande partie grâce Niel
Lorsque vous obtenez des erreurs de compilation, il est utile de nous montrer l'erreur que vous obtenez. :) Aussi, la fonction complète si possible, afin que nous puissions voir comment chaque variable devient ce qu'elle est. – GManNickG