Destruktor-Aufruf führt zu SIGILL
-
kleiner Troll schrieb:
Nicht "in" - "danach", also nach Level::~Level().
Deswegen ist der cursor auch am Ende der geschweiften Klammer, und nicht bei einer Code-Zeile im D-Tor, würd ich mal behaupten.Nee. Es ist normal, dass der Cursor im Callstack auf der nächsten Anweisung steht.
-
Taschenschieber schrieb:
Level hat Member, die auf dem Stack angelegt werden, diese sind aber keine Kinder von Dungeon.
Das war nicht die Frage.
Du läufst irgendwann in ein deleteChildren() rein. dh du hast irgendwo ein Objekt dem du Kinder gegeben hast. zB indem du setParent() für das Kind aufgerufen hast.Und die Frage ist ob du hier uU Stack Objekte als Kind verwendest. Denn deleteChildren() schlägt idR nur dann fehl, wenn es ein delete auf ein Stack Objekt macht.
Welche Member deine Objekte haben ist dabei nicht wichtig. Die Frage ist nur, kann ich das Objekt per delete löschen.
-
Laut seiner Deklaration von der ersten Seite kommt für diesen Effekt eigentlich nur noch MapTile infrage. Er hat ja keine von QObject abgeleiteten Member.
-
Der Typ MapTile ist übrigens ein enum. Die Tiles sind also auch eher unschuldig.