Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Mal wieder ein Problem mit Vererbung

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
21.06.2010, 09:42 Uhr
spatro



Hallo, ich möchte gernde eine rein virtuelle Funktion erstellen, die erst später implemntiert wird, aber bereits in der abstrakten Klasse aufgerufen werden soll.

Code:
class A{
public:
    A(){this->test();}
    virtual void test()=0;
};

class B: public A{
public:
    B():A(){}
    void test(){
          //irgendwas
    }
};

int main(int argc, char *argv[])
{    
    B classB;
    return 0;
}



Das Problem ist, dass der Linker sich nun beschwert, dass die Funktion Test zum Zeitpunkt des Aufrufs noch nicht implementiert ist.
Gibt es eine Möglichkeit, eine rein virtuelle Funktion innerhalb der abstrakten Klasse aufzurufen?

Vielen Dank schonmal

Dieser Post wurde am 21.06.2010 um 09:44 Uhr von spatro editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
21.06.2010, 09:52 Uhr
0xdeadbeef
Gott
(Operator)


Nicht im Konstruktor von A - zu dem Zeitpunkt ist das Objekt noch nicht vom Typ B.

In anderen Funktionen sollte das problemlos gehen.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
21.06.2010, 10:08 Uhr
spatro



Danke für den Hinweis, jetzt funktioniert es.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: