Vererbung
-
class Base { virtual funk() = 0 ; }; class Child : public Base { }; class Myclass : public Child { };Die Child Klasse muss definitiv die funk() Methode implementieren. Muss ich das in meiner Klasse auch noch. Ich persoenlich denke nicht.
-
blurry333 schrieb:
Die Child Klasse muss definitiv die funk() Methode implementieren.
Nö.
Muss ich das in meiner Klasse auch noch.
Nö.
Ich persoenlich denke nicht.
Schoen, aber du koentest es nachlesen oder ausprobieren.
-
Klar muss die child Klasse die Methode implementieren.
-
Nein du depp
-
blurry333 schrieb:
Klar muss die child Klasse die Methode implementieren.
Schlicht und einfach falsch.
-
Die Base Klasse ist abstrakt . Habt ihr das =0 nicht gesehen ?
-
blurry333 schrieb:
Die Base Klasse ist abstrakt . Habt ihr das =0 nicht gesehen ?
Doch, haben wir. Ändert aber wirklich nichts an der Tatsache, dass weder Child noch MyClass eine Implementierung der Methode bereitstellen müssen.
-
Wollt ihr mich verarschen ?
Ich zitiere mal :
Vorteil dieser Vorgehensweise ist die spätere Verwendung von Methoden der Basisklasse, bei denen die Implementierung erzwungen wurde.
Der Verwender der abgeleiteten Klasse kann sich darauf verlassen, dass die Methode implementiert wurde, ohne die weiteren Teile der Hierarchie zu kennen.
-
Wenn ein Objekt erstellt wird, dass von einer Klasse mit pure virtueller Funktion erbt, dann muss sie diese implementieren. Solange kein Objekt erstellt wird braucht sie das nicht. Insbesondere kann sie das Implementieren an davon erbende Klassen abgeben anstatt es selbst zu machen.
-
die abgeleiteten klassen müssen die methode nur implementieren, wenn man die klasse instantiieren können möchte. wenn man sie nicht implementiert, so bleiben die abgeleiteten klassen eben weiterhin abstrakt. nichts verbotenes...
-
ok
