Probleme mit Map



  • Hi.

    Ich habe ein Problem mit den Maps. Immer wenn ich damit Arbeiten will spuckt mein Compiler (MVC) erst 77 Warnungen aus und dann einen Fehler... Und ich weiss absolut nicht warum. Selbst wenn ich einen Code aus meinem ´Buch versuche zu Kompilieren gehts nicht!

    Mein Code:

    #include <iostream>
    #include <map>
    #include <string>
    
    using namespace std;
    
    int main()
    {
        map<string, string> WoBu    // Map für ein Woerterbuch
        map<string, string>::iterator i;
        pair<string, string> Wort;
    
        // So bis hier hin zeigt er nur die 77 Warnungen an. So bald ich aber
        // die nächste Zeile Codiere meldet er einen Fehler!
    
        Wort = make_pair ("Wort1", "Wort2");
        WoBu.insert (Wort);
    
        ...
        return 0;
    }
    

    Ich dachte erst das es an den <string, string> liegt aber der Bsp. Code aus meinen Buch geht auch nicht...Die gleichen Warnungen und der gleiche Fehler:

    Buch Code:

    #include <iostream>
    #include <map>
    #include <string>
    
    using namespace std;
    
    int main()
    {
        map<string, int> Punktetabelle;
        map<string, int>::iterator;
        pair<string, int> Spieler;
    
        Spieler = make_pair ("Name", 23);
        Punktetabelle.insert (Spieler);
    
        ...
        return 0;
    }
    

    Und ich verstehe die Warnungen auch nicht, weil wenn ich auf eine solche Warnung klicke, sapringt das Bild direkt zu einem komplett anderen Quelltext! (denke mal das wird der, der Map sein.....)

    Danke schonmal im Voraus



  • verwendest du MVC 6.0 ? dann ist es kein wunder, der compiler ist alt und ist für stl nicht geeignet...



  • Ja den benutze ich... Mmh... aber dann könnte ich ja auch nicht mit

    #include <string>
    #include <list>
    u.s.w
    

    arebeiten.... 😕



  • nimm einfach einen VC-Compiler Version >= 7.1 und gut is.

    Greetz, Swordfish



  • Hab noch ne Lösung gefunden:

    anstatt:

    ...make_pair ("Name", 23);
    

    einfach noch nen "string" dazufügen:

    ... make_pair (string("Name"), 23);
    

    So klappts...


Log in to reply