Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   kann dieses Konstrukt überhaupt funktionieren? (Arrays...) (https://www.delphipraxis.net/153287-kann-dieses-konstrukt-ueberhaupt-funktionieren-arrays.html)

Blup 5. Aug 2010 09:07

AW: kann dieses Konstrukt überhaupt funktionieren? (Arrays...)
 
Wahrscheinlich liegt die Ursache an anderer Stelle.
Vermutlich wird irgendwo unbeabsichtet der Speicher deiner Objekte oder Strings freigegeben.
Wenn danach auf die Variablen zugegriffen wird, ist dort nichts mehr und AV.

xZise 5. Aug 2010 09:21

AW: kann dieses Konstrukt überhaupt funktionieren? (Arrays...)
 
Moin,
Zitat:

Zitat von Uwe Raabe (Beitrag 1038324)
[....]Wie in dem Kommentar vermerkt, kümmert sich TObjectList<T> standardmäßig um die Freigabe der enthaltenen Instanzen bei Delete, Clear und Free. Will man das nicht (z.B. weil nur Referenzen gespeichert werden sollen), muss man Create(false) verwenden. Das kann z.B. Sinn machen, wenn die Gruppen global verwaltet werden und die User nur Referenzen auf die Gruppen speichern. Dann muss man aber auch darauf achten, daß diese Referenzen entfernt werden, bevor die entsprechenden Gruppen freigegeben werden.

ich möchte noch was hinzufügen:
Guck dir mal Delphi-Referenz durchsuchenTList und Delphi-Referenz durchsuchenOwnObjects an. Das kümmert sich nämlich darum. Du könntest also statt
Delphi-Quellcode:
x := TList<TFoo>.Create(false)
einfach nachträglich
Delphi-Quellcode:
x.OwnObjects := false
setzen. Nur damit du den genaueren Hintergrund kennst.

MfG
Fabian


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:57 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz