以这种形式声明数组时,将静态分配内存:
var
Data: array[0..5] of integer;
Run Code Online (Sandbox Code Playgroud)
我的问题是当以下列方式声明数组时:
var
Data: array of integer;
....
SetLength( Data, Length( Data ) + 1 );
Run Code Online (Sandbox Code Playgroud)
内存是静态还是动态分配的?
我认为内存是静态分配的,数组是在内存中复制的,但我不确定.
这是动态分配,原因有三:
Length( Data ) + 1取决于仅在运行时已知的信息,因此无法静态分配.| 归档时间: |
|
| 查看次数: |
822 次 |
| 最近记录: |