wenn ich beispielsweise folgende Klassenvererbungsstruktur habe:
Code:
A
/ \
B C
\ /
D
B und C erben von A und D erbt von B und C.
Wenn ich in der Klasse A eine Variable und eine Methode definiert habe, kann ich ja die wiederholte Vererbung dieser über B und C auf D durch das virtuelle Erben verhindern. Dann habe ich ja auf D nur ein Objekt von A statt, zwei die ich über B und C bekommen hätte.
Kann man dann sagen die Klasse ist statisch innerhalb meiner Klassenvererbungsstruktur?
>> Kann man dann sagen die Klasse ist statisch innerhalb meiner Klassenvererbungsstruktur?
Was meinst du damit? In C++ gibt es nichts, was man als "statische Klasse" bezeichnen könnte. Nur statische Variablen, ~ Membervariablen und ~ Memberfunktionen.
Im Nachhinein betrachtet ist es völliger Quatsch was ich da von wegen statisch geschrieben habe. Es soll zwar keine dummen Fragen geben, aber die war schon gar kein schlechter versuch von mir.
Hier noch eine Standardpredigt: Hüte dich vor der Mehrfachvererbung. In vielen Sprachen existiert sie nicht und designtechnisch bringt sie viele Nachteile (Diamond of Death etc.) Es ist eines der wenigen Sprachfeatures in C++, die man selten bis nie benutzen sollte (besonders Sachen wie virtuelle Vererbung). Wie auch immer, es gibt dennoch interessante Einsatzmöglichkeiten, wenn man z.B. von mehreren Klassentemplates erbt (Stichwort: Policy-Pattern).
Ich programmiere momentan zwar nicht in C++ aber durch meine Erfahrungen in "bourgeoisen" Sprachen wie C# und Java würde ich in C++ mittlerweile sogar eher dazu tendieren Mehrfachvererbung verwenden als früher.
Aber: Höchstens eine der geerbten Klassen darf Implementierungen enthalten, die anderen Klassen sind reine Interface Klassen mit pure virtual methods. Wenn man die Namespaces klar trennt und die Klassenhirarchien flach hält sollte man keine Probleme erwarten.
Ein langes Leben hat viel zu erzählen. Wir haben für euch in unserem Presse-Archiv eine Auswahl diverser Presseberichte über gulli.com aus vergangenen Jahren zusammengestellt.
Angefangen bei den notwendigen Grundlagen, welche das Wirkungsprinzip beim Filesharing erklären, über die verschiedenen Möglichkeiten und Tools, bis hin zu den wichtigen rechtlichen Details für Deutschland. Erfahre mehr:
Wir schreiben das Jahr 1962. Der kalte Krieg tobt und die Legende um die Entstehung des Internet findet ihren Anfang. Das Arpanet wird geboren. Auftraggeber des ersten Vorläufers des heutigen Internet war damals die US-Luftwaffe.
Neben der RSS-Lösung, mit der Webmaster die gulli:News nach Belieben auf ihren Seiten integrieren können, existiert eine einfache universal anpassbare Lösung auf Javascript-Basis. Wer die News auf der eigenen Seite einbinden möchte, muss nun nur noch eine Zeile des automatisch generierten Scripts in den eigenen HTML-Code einfügen.
Schon im Newsletter informierten wir dich über die iPhone-Applikation der gulli:news. Jetzt ist die neueste Version erschienen, alle Verbesserungen basieren auf Vorschlägen der Community. Das App ist kostenlos. Gute Unterhaltung wünschen wir!
Occupy Kiel: Massiver Sachschaden...
Heute, 20:15 in gulli:news