
Zitat von
tommie-lie:
Ich nur selten und eine solche Notwendigkeit ist mir dabei nicht aufgefallen. Ich habe mir die Metaklassen immer als Typ in Variablengewand vorgestellt. Die "Variable" bc in deinem Beispiel wäre demnach selbst nur ein Typ. Diese Vorstellung hat bisher immer gut mit meinen Beobachtungen übereingestimmt, weswegen ich mir nie die Mühe gemacht habe, des genaue Innenleben auseinanderzunehmen.
Ich auch nicht

Aber ich verwende die gleiche Analogie wie du, und da schauts so aus, dass ich eine Variable eines Basistyps habe, welcher aber eine Referenz auf eine Spezialisierung dieses Basistyps darstellt. Und damit ein Methodenaufruf nun auf den realen Typ und nicht auf den statischen geht, muss diese virtuell sein.
In diesem Kontext ist der Konstruktor eine ganz normale Methode, und damit der Konstruktur der tatsächlichen KLasse und nicht der zur Laufzeit bekannten (TBlubbClass) aufgerufen werden soll, muss dieser virtuell sein. Soweit mein Gedanke.