AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Record "finalisieren"

Ein Thema von CocoPops · begonnen am 2. Apr 2014 · letzter Beitrag vom 2. Apr 2014
 
Benutzerbild von himitsu
himitsu

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

AW: Record "finalisieren"

  Alt 2. Apr 2014, 14:37
GetMem und FreeMem = ohne Initialize und Finalize
New und Dispose = mit Initialize und Finalize


Setzt Finalize den Speicher eigentlich auch auf 0/nil, oder gibt es die verlinkten Speicher "nur" frei?
Wenn nicht auf nil gesetzt wird, dann ist ein "doppelter" Aufruf von Finalize falsch und kann/wird zu netten Fehlern führen.



Welche Delphi-Version? (es kann nie schaden das im Profil anzugeben, oder zumindestens in den Posts)
Ab D2009 könnte man auch eine generischen Liste verwenden und das New/Dispose wegzulassen.
Jenachdem wie oft die Records umgeschaufelt oder später verändert werden.

Da hier eh mit Pointer gearbeitet wird und wenn das "jenachdem" nicht zutrifft, dann doch eher eine generische Liste, mit einem Data-Objekt, statt dem Record.


Zitat:
Data^.sBeispielVar
PS: Delphi kann das auch implizit dereferenzieren, wenn ein Punkt folgt.
Data.sBeispielVar
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 2. Apr 2014 um 15:02 Uhr)
  Mit Zitat antworten Zitat
 


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 04:59 Uhr.
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