Pointeur vers objet dans un vecteur
Bonjour,
j'aimerais utiliser un itérateur sur un vecteur (technique que je ne connais pas très bien) et j'ai un petit soucis à la compilation. Pourriez-vous m'aider ? Merci d'avance !
Mon .h
Code:
1 2 3 4 5 6 7 8 9 10
|
class listLocalization {
private:
std::vector<localization> list;
public:
localization * getLocalization(std::string name);
...
} |
Dans mon fichier .cpp :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
localization * listLocalization::getLocalization(std::string name) {
for(std::vector<localization>::iterator iter = list.begin(); iter!=list.end(); ++iter) {
// Si le nom de l'élément est égal à celui recherché, retourner l'objet localization
if(!iter->getName().compare(name))
return iter;
}
return NULL;
} |
Le compilateur m'affiche une erreur que je n'arrive pas à comprendre :
Code:
1 2 3 4
|
In member function 'localization* listLocalization::getLocalization(std::string)':
error: cannot convert 'std::vector<localization>::iterator {aka __gnu_cxx::__normal_iterator<localization*, std::vector<localization> >}' to 'localization*' in return
return iter; |