Sehr eigenartige Compilermeldung



  • Hallo.
    Ich habe gerade versucht, ein Projekt zu kompilieren und dabei kam diese sehr verwirrende Fehlermeldung heraus:

    Fehler	2	error LNK2001: Nicht aufgelöstes externes Symbol 
    ""public: class std::vector<class std::basic_string<char,struct 
    std::char_traits<char>,class
     std::allocator<char> >,class std::allocator<class std::basic_string<char,
    struct std::char_traits<char>,class std::allocator<char> > > > __thiscall 
    Vocabulary::GetVocabularyList(class std::basic_string<char,struct 
    std::char_traits<char>,class std::allocator<char> >)" 
    (?GetVocabularyList@Vocabulary@@QAE?AV?$vector@V?$basic_string@DU
    ?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$
    basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@V?
    $basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@@Z)".	VocTrainer.obj
    

    Diese kam auch noch. Vielleicht hilft sie weiter:

    Fehler	3	fatal error LNK1120: 1 nicht aufgelöste externe 
    Verweise.	C:\Florian\Projekte\C++ in Visual Studio\C++ Primer\VocTrainer\Debug\VocTrainer.exe	1
    

    Leider komm ich damit überhaupt nicht klar und weiß überhaupt nicht, wo mein Fehler steckt... Wenn ihr Zusatzinformationen braucht müsst ihr sagen, ich weiß leider nicht, welcher Teil bei der Suche weiterhelfen kann.

    Gruß Speedy_92



  • Spontan würde ich sagen, dass Du eine Funktion GetVocabularyList hast, die zwar deklariert aber nicht definiert wurde.



  • Doch, sie ist definiert.



  • Der Compiler sagt was anderes. Vielleicht stimmen die Interfaces von Deklaration und Definition nicht überein. Ohne Code ist das aber Wahrsagerei.



  • Ich habe meine Fehler gefunden. Ein richtig dummer mal wieder 😃

    Ich habe das MeineKlasse:: vor der Deklaration vergessen.



  • Aber erstmal vorher ein schlaues "Doch, sie ist definiert." schreiben ... 🙄


Log in to reply