IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

Insertion d'un élément vide dans une map.


Sujet :

C++

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 61
    Par défaut Insertion d'un élément vide dans une map.
    Bonjour,

    J'ai fais une fonction qui fais des calcul et me stockes les résultats dans une map.

    Mais au lieu d' insérer 66 éléments (dans les normes) dans la map, la fonction insère 67 clefs.

    En effet elle commence par insérer une clef vide avant de continuer à insérer le reste des clef.

    C'est la première fois que cela m'arrive et ça reste assez bizarre.

    Quelqu'un saurez d'où viens l'erreur s'il vous plait?
    Merci.

    Voici mon bout de code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
        for( std::map<std::string, std::string>::iterator it1 = SitesDifferentsDonnes.begin(); it1 != SitesDifferentsDonnes.end(); ++it1){ //itterer sur Couple_De_Famille
     
     
               for(std::map<std::string, std::string>::iterator it1compare = it1; it1compare != SitesDifferentsDonnes.end(); ++it1compare){ //Itterer sur espece;
     
                int l = it1->second.length () ;
                int l2 = it1compare->second.length () ;
                if (l != l2)
                    throw ("Les chaines à comparer ne sont pas égales !") ;
     
                    std::ostringstream mespositions;
                    for (int i = 0 ; i <l; ++i)
                    {
     
     
                        std::ostringstream GeneComparees;
     
                        if (it1->first != it1compare->first)
                        GeneComparees << it1->first << "_" << it1compare->first;
     
     
                            if (it1->second[i] != it1compare->second[i]) {
                            mespositions << " " <<i+1;
                            }
                            SitesDifferents [GeneComparees.str()] = mespositions.str() ;
     
                    }
     
                }
     
     
        }
        return(SitesDifferents);
     
    }
    Merci d'avance.

  2. #2
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Salut,
    Ta seconde boucle commence par le premier élément au lieu de commencer par l'élément suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            std::map<std::string, std::string>::iterator it1compare = it1;
            ++it1compare;
               for(; it1compare != SitesDifferentsDonnes.end(); ++it1compare){ //Itterer sur espece;

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 61
    Par défaut
    Exactement ça. Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Recherche d'un élément dans une map
    Par Bash01 dans le forum Débuter
    Réponses: 2
    Dernier message: 03/05/2010, 10h54
  2. [POO] Insertion d'un template dans une map
    Par JSmey dans le forum Langage
    Réponses: 6
    Dernier message: 27/11/2008, 12h50
  3. problème avec insert dans une map
    Par LePetitBricoleur dans le forum C++
    Réponses: 3
    Dernier message: 01/11/2007, 12h52
  4. Existence d'un élément dans une map
    Par magicpm7 dans le forum SL & STL
    Réponses: 6
    Dernier message: 20/08/2007, 18h37
  5. problème d'insertion de données dans une map
    Par kifouillou dans le forum Collection et Stream
    Réponses: 11
    Dernier message: 21/02/2007, 11h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo