Multiple Definition Error



  • Hi,

    I am trying to make use of some inherited class & function (e.g. class X, function abc()) from other parent classes (e.g. class A,B), unfortunately, I have got 'multiple definition' error whlie compiling.

    //AAA.h
    class A {
    public :
    virtual void abc();
    }
    
    class X : public A {
    public :
    void abc();
    }
    
    //AAA.cc
    void X::abc() {
    }
    
    //BBB.h
    class B {
    public :
    virtual void abc();
    }
    
    class X : public B {
    public :
    void abc();
    }
    
    //BBB.cc
    void X::abc() {
    }
    

    how can I refer to the parent classes A,B while calling the abc() function?

    Thank you for any clue..
    J



  • //AAA.h
    class A {
    public :
    virtual void abc();
    };
    
    class X : public A {
    public :
    void abc();
    };
    
    //AAA.cc
    void X::abc() {
    }
    
    //BBB.h
    class B {
    public :
    virtual void abc();
    };
    
    class Y : public B {
    public :
    void abc();
    };
    
    //BBB.cc
    void Y::abc() {
    }
    

    The problem ist de multiple definition of X. You can't have the same class definition twice in the same programm. (apart from templates).

    how can I refer to the parent classes A,B while calling the abc() function?

    Something like this:

    class X : public A {
    public :
    void abc(){ A::abc (); }
    }
    


  • drakon schrieb:

    The problem ist de multiple definition

    n1 drakon

    well dann my friend...
    lets inkries auer ingliesch nolegde 😃 xD 😃
    😉 😉



  • Skym0sh0 schrieb:

    drakon schrieb:

    The problem ist de multiple definition

    n1 drakon

    well dann my friend...
    lets inkries auer ingliesch nolegde 😃 xD 😃
    😉 😉

    Nene. Das war nicht aus dem Grund. 😉

    Schau mal genau hin. das kam von is (abstand vertippt ) tde (ok nochmal Tippfehler d, anstatt h). 😉
    Das kommt davon, wenn das übliche Notebook in Reperatur ist und man auf ein anderes zugreifen muss. 🙂

    Muss aber zugeben, das war ein wirklich tolles zusammenspiel. :p



  • drakon schrieb:

    (ok nochmal Tippfehler d, anstatt h). 😉

    Stimmt, kann einem ja leicht passieren, zumal sich das D ja gerade neben dem H auf der Tastatur befindet. 😃



  • Nexus schrieb:

    Stimmt, kann einem ja leicht passieren, zumal sich das D ja gerade neben dem H auf der Tastatur befindet. 😃

    *hust* Dvorak? *hust* 😃



  • Danke fuer deine Hilfe 🙂



  • aboutjeab schrieb:

    Danke fuer deine Hilfe 🙂

    Bitte. Aber warum hast du das auf Englisch geschrieben, wenn du Deutsch kannst?
    Ohne das hätte es die sinnlosen Kommentare nicht gegeben. 😉

    LordJaxom & Nexus :
    So. Ruhe auf den billigen Plätzen. 😃

    Zugegeben ist wirklich einer meiner kreativeren Vertipper. ^^


Anmelden zum Antworten