J'ai le problème suivant liées à parcourir un tableau associatif des chaînes définies en utilisant std::map.
-- snip --
class something
{
//...
private:
std::map<std::string, std::string> table;
//...
}
Dans le constructeur, je remplir le tableau avec des paires de clés de chaîne associée à la chaîne de données. Ailleurs, j'ai une méthode toString qui renvoie un objet de type string qui contient toutes les clés et les données associées contenues dans l'objet de la table(clé=format des données).
std::string something::toString()
{
std::map<std::string, std::string>::iterator iter;
std::string* strToReturn = new std::string("");
for (iter = table.begin(); iter != table.end(); iter++) {
strToReturn->append(iter->first());
strToReturn->append('=');
strToRetunr->append(iter->second());
//....
}
//...
}
Lorsque j'essaie de compiler j'ai le
erreur: "error: no match for call to ‘(std::basic_string, std::allocator >) ()'".
Quelqu'un pourrait m'expliquer ce qu'il manque, ce que je fais mal? Je n'en ai trouvé une discussion sur un problème similaire dans le cas des classes hash_map où l'utilisateur doit définir une fonction de hachage pour être en mesure d'utiliser les classes hash_map avec std::string objets. Pourrait être quelque chose de semblable aussi dans mon cas?
Merci!!!!