Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
FreePascal / Lazarus
|
Re: virtuelle funktion
1. Apr 2010, 19:49
Selbst dann wird es noch crashen, aufgrund des Doppelpointers. Dein Pointer, den du speicherst, zeigt nämlich auf die Adresse der lokalen Variable wnd, nicht auf das dahinterliegende Objekt. Da die Variable wnd im nächsten Durchlauf undefiniert ist, wird auf die falsche Adresse zugegriffen, die zufällig an dieser Stelle gespeichert ist.
Das Objekt selbst ist, wie ich schon sagte, bereits ein Pointer - Also caste das Objekt einfach nach Integer und alles wird gut.
|