Siehe TStream:
Dort gibt es 2 Basismethoden, wovon mindestens Eine überschrieben sein muß.
In TStream wird dann, beim Aufruf der Nichtüberschriebenen auf die Andere weitergeleitet.
Nun gibt es aber in beiden Methoden jeweils eine Weiterleitung zum anderen, was zu einer Endlosschleife führen würde, darum wird dort geprüft, ob auch wirklich überschrieben wurde, um eventuell eine Fehlermeldung zu werfen.
Das Grundprinzip ist einfach.
Man besorgt sich von beiden Typen die Adressen der Methoden und vergleicht diese.
> sind sie ungleich, dann wurde überschrieben
Oder man geht eben über die
RTTI und besorgt sich darüber die Adressen. (über die neue
RTTI geht das recht einfach)