AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Array mit Recordinhalten löschen

Ein Thema von Mojito · begonnen am 30. Nov 2012 · letzter Beitrag vom 3. Dez 2012
Antwort Antwort
Seite 3 von 3     123
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.017 Beiträge
 
Delphi 12 Athens
 
#21

AW: Array mit Recordinhalten löschen

  Alt 3. Dez 2012, 13:28
Ins Insert muß es rein, denn wenn das z.B. ein Array of String oder IInterface ist, dann muß dort der Speicher freigegeben/genullt werden, ohne die Referenzzählung zu nutzen.
Aber beim Remove hast du Recht, da geht es auf den falschen Index. (muß Values[High(Values)] nullen)

Statt FillChar könnte man zwar auch InitializeRecord verwenden, aber FillChar dürfte locker ausreichen.

Bei Remove und Insert wurden Felder kopiert, womit eines der Felder nun doppelt existiert, aber die doppelte "Referenz" nicht in eventuell vorhandenen Referenzzählungen beachtet wurde, darum muß diese eventuelle Referenz "vernichtet" werden, bzw. es wirde für gewisse Typen die Speicherverwaltung nicht angepaßt.
(dyn. Array, String, Interface, Variant und Records mit den Zuvorgenannten)



Nja, Emba wird doch hoffentlich seine neu eingefühten Unittests darauf anwenden, bzw. bei Übernahme der Codes nochmal einen Blick drauf werfen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz