假设您有一个您想要初始化的本地记录:
type TMyRec=record Val1,Val2:Integer; end; procedure MyProc; var MyVar:TMyRec; begin // ... ? WriteLn(Val1,Val2); end;
除了“手动”设置每个字段外,还有几种方法可以实现.
>使用Initialize():
Initialize(MyVar);
>使用默认值():
MyVar := Default(TMyVar);
>使用FillChar:
FillChar(MyVar,SizeOf(MyVar),0);
>定义一个空常量,并将其赋值给var
const cMyVar:TMyVar=(); ... MyVar := cMyVar;
以上所有似乎都适用于这个例子.我想你甚至可以定义一个全局变量来初始化它.
但是有一种首选方法吗?或者在某些情况下,不建议使用上述任何一种情况,或者它根本不起作用?
简而言之,初始化本地堆栈变量的权利是什么?