005
06.07.2007, 23:59 Uhr
Kest
saint
|
Hi!
Es liegt einfach nur daran, weil die Klassenerzeugung von unten nach oben wächst: zuerst werden die Basisklassen erzeugt, dann die abgeleiteten. Zuerst wird sie in A überschrieben und nur dann in B. Und in umgekehrter Reihenfolge zerstört. Ist eigentlich logisch. Wenn aber B schon erzeugt ist, dann wird natürlich immer die von B aufgerufen, auch wenn man upcastst. (Außer man ruft sie explizit auf (A::)). -- Wenn man einen Hufschlag hört, sollte man >Pferd< denken und nicht >Zebra<. Dieser Post wurde am 07.07.2007 um 00:00 Uhr von Kest editiert. |