Einzige Möglichkeit an den "tatsächlichen" Klassennamen ranzukommen:
Du derstellst dir in der Basisklasse eine Funktion ala RealClassName,
definierst diese
NICHT als Virtual, greifst darin direkt auf den Klassentyp zu oder setzt den Result-String selber.
Und dann nicht vergessen dieses in allen abeleiteten Klassen zu überschreiben ....
Nja, oder du setzt gleich den gewünschten String direkt (per Hand) an der Stelle ein.
Ein Therapeut entspricht 1024 Gigapeut.