Vererbung bei C++ ...?

... komplette Frage anzeigen

1 Antwort

Wenn der Iterator auf ein Objekt vom Typ A ist kann er natürlich nur auf die Variablen von A zugreifen, denn A erbt ja nicht von B.

Wenn der Iterator für B ist dann kann er natürlich (so wie B auch) auf die protected Variablen von A zugreifen.

Wenn man es mit der Mengenleere betrachtet:

A ist eine Menge B ist eine Menge die ganz A beinhaltet. Wenn ich jetzt aber von der Menge A spreche, dann sieht die Menge A nichts von B. Aber wenn ich von der Menge B spreche dann sieht die Menge B alles von A weil es ja eine Teilmenge ist.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von wolfgang9999
03.12.2015, 00:46

Vielen Dank ... das hatte ich bereits befürchtet. Dann werde ich wohl nicht um einen Iterator für die Klasse B herumkommen.

Ich implementiere aktuell Knoten für einen Baum.

NODE (A), INNER_NODE (B) und LEAF_NODE (C). Mein Iterator sollte eigentlich eine inneren Klasse von NODE werden und einen pointer auf ein A erhalten, der dann wiederum über die einzelnen INNER_NODES iteriert und dort <whatever> machen kann. Mit einem INNER_NODE-Iterator hätte ich lediglich bei den LEAF_NODEs ein Problem, das ich aber bestimmt auch noch gelöst bekomme. Nochmals vielen Dank!

0