Autor Beitrag
Andreas Pfau
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 997



BeitragVerfasst: So 29.12.02 22:27 
Weiß jemand, wie ich einen mehrdimensionalen dynamischen Array freigeben muss? Bei einen eindimensionalen kann ich das ja so machen:
ausblenden Quelltext
1:
2:
3:
X: Array Of Byte;
{ ... }
Finalize(X);


Was muss ich dann hier machen:
ausblenden Quelltext
1:
X: Array Of Array Of Byte;					


Muss ich jedes element explizit freigeben?
ausblenden Quelltext
1:
2:
3:
For I := Low(X) To High(X) Do
 Finalize(X[I]);
Finalize(X);


Oder genügt es, den obersten Array freizugeben?
ausblenden Quelltext
1:
Finalize(X);					
AndyB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1173
Erhaltene Danke: 14


RAD Studio XE2
BeitragVerfasst: Mo 30.12.02 00:28 
Es genügt sogar nur ein:
ausblenden Quelltext
1:
X := nil;					

Dieses wird vom Compiler automatisch in einen Finalize(X) Aufruf umgewandelt. Ein Finalize für jede Dimension ist unnötig, da Finalize dies automatisch erledigt.

_________________
Ist Zeit wirklich Geld?
Andreas Pfau Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 997



BeitragVerfasst: Mo 30.12.02 12:07 
Titel: Danke!
Danke, so wer'd ich's machen!