Surcharge <<

koala_corse Messages postés 2 Date d'inscription jeudi 20 avril 2006 Statut Membre Dernière intervention 21 avril 2006 - 20 avril 2006 à 16:49
koala_corse Messages postés 2 Date d'inscription jeudi 20 avril 2006 Statut Membre Dernière intervention 21 avril 2006 - 21 avril 2006 à 13:49
Salut,

Je veux surcharger l'opérateur << pour une de mes classes qui encapsule un multimap (donnée membre privée : laListe).

Voici le code que j'ai tapé :
ostream& operator<< (ostream& o, const EdgeList& list)
{
cout << "Elements en liste : " << endl;

for (std::multimap<const std::string, Edge>::iterator it = listeLocale->begin(); it != listeLocale->end(); ++it)
cout << " [" << (*it).first << ", " << (*it).second.Getlabel() << "]" << endl;
return o;
}

Voici la réponse du compilateur :

edgelist.cpp:27: erreur: conversion from ‘std::_Rb_tree_const_iterator<std::pair<const std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Edge> >’ char> >, Edge> >’ char> >, Edge> >’ to non-scalar type ‘std::_Rb_tree_const_iterator<std::pair<const std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Edge> >’ char> >, Edge> >’ char> >, Edge> >’ requested.


Si je comprends bien il me demande de convertir un type en lui même ! Je ne comprends rien !

Merci de m'expliquer si quelqu'un comprend.

3 réponses

dletozeun Messages postés 546 Date d'inscription vendredi 13 février 2004 Statut Membre Dernière intervention 9 janvier 2008 1
20 avril 2006 à 18:37
je peux pas t'aider...mais si tu veux avoir plus de succes je te conseille de reposter ton code maprce la c'est illisible!
0
dletozeun Messages postés 546 Date d'inscription vendredi 13 février 2004 Statut Membre Dernière intervention 9 janvier 2008 1
20 avril 2006 à 18:38
oula j'ai buggé, le 'maprce' ca veux dire 'parce que'
0
koala_corse Messages postés 2 Date d'inscription jeudi 20 avril 2006 Statut Membre Dernière intervention 21 avril 2006
21 avril 2006 à 13:49
Pour l'instant, faute de temps, j'ai abandonné l'idée et me suis orienté vers l'utilisation d'une méthode Afficher(), tout simplement.

Merci quand même

A+
0
Rejoignez-nous