Ich versuche, die Adresse einer virtuellen Mitgliedsfunktion zu drucken. Wenn ich weiß, welche Klasse die Funktion implementiert, kann ich schreiben:Druckadresse der virtuellen Mitgliedsfunktion
print("address: %p", &A::func);
Aber ich will, so etwas tun:
A *b = new B();
printf("address: %p", &b->func);
printf("address: %p", &b->A::func);
Dies gilt jedoch nicht kompilieren. Ist es möglich, etwas zu tun, vielleicht die Adresse in der Vtable zur Laufzeit nachschlagen?
@GMan Das ist, was ich dachte, sagte ich. Jedenfalls glaube ich nicht, dass das möglich ist. –