Linker



  • also ich möchte eine dynamische lsite schreiben, der compiler hat aber probleme beim linken und ich habe keine ahnung wieso:

    //gespeichert ind LinkedListe.h

    #ifndef LinkedListe_H
    #define LinkedListe_H

    template <class any>
    class LinkedListe {
    public:
    void hello();
    };

    #endif LinkedListe_H

    //gespeichert in LinkedList.cpp
    #include "LinkedList.h"
    #include <iostream.h>

    template <class any>
    void LinkedListe<any>::hello() {
    cout<<"Hallo";
    }

    //gespeichert in exec.cpp
    #include "LinkedList.h"

    void main() {
    LinkedListe<int> liste;
    liste.hello();
    }

    der compiler spuckt folgendes aus:
    Linker-Vorgang läuft...
    exec.obj : error LNK2001: Nichtaufgeloestes externes Symbol "public: void __thiscall LinkedListe<int>::hello(void)" (?hello@?$LinkedListe@H@@QAEXXZ)
    Debug/LinkedList.exe : fatal error LNK1120: 1 unaufgeloeste externe Verweise
    Fehler beim Ausführen von link.exe.

    wenn ich die main mehtode in der datei LinkedList.cpp speichere, da funktioniert alles wunderbar, aber sobald ich die main methode in eine eigene datei schreibe, will das nicht mehr funktionieren.

    ich bin total ratlos, kann mir da jemand helfen?





  • *schämentu* danke, ich hätte zuerst das faq durchlesen sollen, hab aber nicht damit gerechnet, dass der kompiler sowas primitives nicht unterstützt.


Anmelden zum Antworten