Delphi-PRAXiS
Seite 8 von 9   « Erste     678 9      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Record zurücksetzen (löschen) (https://www.delphipraxis.net/120638-record-zuruecksetzen-loeschen.html)

SubData 18. Sep 2008 09:11

Re: Record zurücksetzen (löschen)
 
Nix und, ich wollte nur darauf hinweisen, dass Zufallswerte und undefinierte Werte nicht das Gleiche sind :)

Guido Eisenbeis 26. Sep 2008 19:33

Re: Record zurücksetzen (löschen)
 
Bin über die Funktion "ZeroMemory" gestolpert. Wenn man die anstatt "FillChar" benutzt, hat das Vor- oder Nachteile?

Guido.

Neutral General 26. Sep 2008 19:39

Re: Record zurücksetzen (löschen)
 
Soweit ich weiß, macht das keinen Unterschied.

toms 26. Sep 2008 19:39

Re: Record zurücksetzen (löschen)
 
Zitat:

Zitat von Guido Eisenbeis
Bin über die Funktion "ZeroMemory" gestolpert. Wenn man die anstatt "FillChar" benutzt, hat das Vor- oder Nachteile?

Guido.

Ein Blick in den Source-Code verrät folgendes:

Delphi-Quellcode:
procedure ZeroMemory(Destination: Pointer; Length: DWORD);
begin
  FillChar(Destination^, Length, 0);
end;

grenzgaenger 26. Sep 2008 19:46

Re: Record zurücksetzen (löschen)
 
hab zwar nicht den gesamten thread gelesen, aber bei der methode finalize/zeromemory, sollt man vorsichtig sein. wenn man so etwas anwendet muss man immer einen konkreten record im hinterkopf haben, sonst bekommt man die schönsten speicherlöcher ... :drunken:

Guido Eisenbeis 26. Sep 2008 19:47

Re: Record zurücksetzen (löschen)
 
Zitat:

Zitat von toms
Delphi-Quellcode:
procedure ZeroMemory(Destination: Pointer; Length: DWORD);
begin
  FillChar(Destination^, Length, 0);
end;

Hua, hua, hua, :spin: ich lach mich kaputt :cheer:

Das ist ja der Hammer und die Frage hat sich somit erledigt! *lol*

Vielen Dank euch beiden!

Guido.

Rosenwehr 9. Okt 2008 07:20

Re: Record zurücksetzen (löschen)
 
Ich nutze Delphi2005Prof und möchte myrecord.clear() (s.o.) nutzen.

Beim compilieren erhalte ich: "E2029 'END' erwartet, aber 'PROCEDURE' gefunden". Der Cursor steht in Unit 2 hinter dem Wort procedure der Tmyrecord deklaration.

Type
TMyRecord = record
Test_1 : string;
Test_2 : string;
Integer_1 : Integer;
Integer_2 : Integer;
FindData: TWIN32FINDDATA;
procedure Clear();
end;


Sind spezielle Units einzubinden oder wird es in der Delphi-Version nicht unterstützt?

Daniel 9. Okt 2008 07:23

Re: Record zurücksetzen (löschen)
 
Diese Möglichkeit hast Du leider erst ab Delphi 2006.

Rosenwehr 9. Okt 2008 07:29

Re: Record zurücksetzen (löschen)
 
Danke für die schnelle Antwort.

Rosenwehr 9. Okt 2008 07:34

Re: Record zurücksetzen (löschen)
 
Wäre es möglich, eine compilierte Unit2 unter D2006 mit D2005 zu nutzen?

D. h. Bearbeitung der Unit1 unter D2005 und Zugriff auf die dcu (mit dem Record) vom D2006?

Wenn ja, gilt das auch für folgende Delphi-Versionen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:06 Uhr.
Seite 8 von 9   « Erste     678 9      

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