Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Probleme STL map iterator [ Divers / Débutant(e) ] (RV2931)

lundi 21 juillet 2008 à 15:51:43 | Probleme STL map iterator

RV2931

Bonjour,

j'ai un petit problème avec l'utilisation des map et iterateur, voici grosso modo mon problème :

std::map<std::string,std::string> Map;
std::map::iterator it;

for(it = Map.begin();it != Map.end();it++)
{
     cout<<(*it).first()<<" "<<(*it).second()<<endl;
}


Le code me paraît bon, (sauf erreur de frappe), mais Visual Studio ne semble déjà pas trouver le type de it. Intellisense ne trouve aucune information, donc pas de complétion auto, et ça déjà, c'est chiant. Y a-t-il un truc a faire pour que Visual studio/intellisense reconnaisse les STL ??? ça me paraît bizarre.
 Et voici les erreurs qu'il me sort, je ne comprend pas trop...

error C2228: la partie gauche de '.second' doit avoir un type class/struct/union le type est 'std::_Tree<_Traits>::iterator::reference'
error C2228: la partie gauche de '.first' doit avoir un type class/struct/union le type est 'std::_Tree<_Traits>::iterator::reference'
error C2262: 'it' : ne peut pas être détruit(e)
error C2512: 'std::_Tree<_Traits>::iterator' : aucun constructeur par défaut approprié disponible
error C2582: 'operator =' fonction non disponible dans 'std::_Tree<_Traits>::iterator'
error C2676: '++' : 'std::map<_Kty,_Ty>::mapped_type' binaire ne définit pas cet opérateur ou une conversion vers un type acceptable pour l'opérateur prédéfini
        with
        [
            _Kty=std::string,
            _Ty=std::string
        ]
error C2955: 'std::map' : l'utilisation d'un modèle de classe nécessite une liste d'arguments de modèle
error C2955: 'std::map' : l'utilisation d'un modèle de classe nécessite une liste d'arguments de modèle c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\map(149) : voir la déclaration de 'std::map'
error C3861: 'it': identificateur introuvable, même avec une recherche qui dépend de l'argument
error C3861: 'it': identificateur introuvable, même avec une recherche qui dépend de l'argument
error C3861: 'it': identificateur introuvable, même avec une recherche qui dépend de l'argument
error C3861: 'it': identificateur introuvable, même avec une recherche qui dépend de l'argument
error C3861: 'it': identificateur introuvable, même avec une recherche qui dépend de l'argument


J'ai essayer en mettent des (*it)-> à la place de (*it). mais idem...


Merci

RV

L'intelligence est la chose la mieux répartie chez l'homme, car quoi qu'il en soit pourvu, il a toujours l'impression d'en avoir assez. "Descartes"

lundi 21 juillet 2008 à 15:56:16 | Re : Probleme STL map iterator

RV2931

Il y a biensur un
#include <map> au dessus...

L'intelligence est la chose la mieux répartie chez l'homme, car quoi qu'il en soit pourvu, il a toujours l'impression d'en avoir assez. "Descartes"

lundi 21 juillet 2008 à 16:26:13 | Re : Probleme STL map iterator

RV2931

Réponse acceptée !
oups, , j'ai trouvé. Il faut repréciser les types pour l'itérateur aussi, c'est évident.... maintenant..

std::map<std::string,std::string> Map;
std::map
<std::string,std::string>::iterator it;

for(it = Map.begin();it != Map.end();it++)
{
     cout<<(*it).first()<<" "<<(*it).second()<<endl;
}


désolé



Cette discussion est classé dans : type, map, std, iterator, it


Répondre à ce message

Sujets en rapport avec ce message

MFC and STL dll problem [ par daesdemon ] Bonjour j'ai un petit soucisJ'ai unbe DLL non MFC ( STL map + iterator ) que j'utilise a partir d'une app MFCLe probleme arrive quand je recupère un m surcharge << [ par koala_corse ] 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 passez un tableau a une fonction ? [ par FeelCode ] //Fichier 1#include #include //#using //using namespace System;//Fichier du projet#include "MainPrototype.h"#include "AffichageConsole.h"#include "Mai Trier une std::map [ par simtiers ] Salut ! voilà, j'ai une classe CPlayer avec une surcharge de l'operateur bool CPlayer::operator {     if( posY getPosY() ) STL map et plusieurs types de valeurs ? [ par RV2931 ] Bonjour à tous,J'ai découvert récemment les STL C++ car je souhaite retrouver un outils permettant de retrouver la puissance et la flexibilité des tab erreur std::operator [ par chalmia2s ] Bonjour,je fais un code sur visual c++ et j'obient 180 erreur!!!!!!!!!!!!!!! du genre: pour le code: std::string str;std::string nom="";std::string mettre un type"record" comme clé dans un map (C++) [ par babyboo1107 ] Bonjour,Voilà j'ai un type fichier qui est un record (string nom, __int64 taille,FILETIME date) j'aimerai créer un map mais il n'accepte pas que je lu Erreur de type LNK 2005 [ par BenGourion73 ] Bonjour, J'ai une solution en développement qui se compose d'une librairie statique et d'un exécutable. La librairie statique compile bien toute seule Problème d'insertion dans une map [ par Thirteen ] J'ai une map déclarée ainsi : std::map Calibrage.Mais lorske j'essaie d'insérer deds en faisant Calibrage [P] = C, j'ai une erreur : 'operatorKeske jd pb sur une multimap [ par kptn ] Y a-t-il un moyen pour récupérer un iterator d'un élément dont on connait la pair dans une multimap?Je m'explique un peu mieux par un exemple. typed


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.