【发布时间】:2013-01-05 20:40:12
【问题描述】:
假设您有一个要初始化的本地记录:
type
TMyRec=record
Val1, Val2:Integer;
end;
procedure MyProc;
var
MyVar:TMyRec;
begin
// ... ?
WriteLn(Val1,Val2);
end;
除了“手动”设置每个字段之外,还有几种方法可以做到这一点。
-
使用初始化():
Initialize(MyVar); -
使用默认():
MyVar := Default(TMyVar); -
使用FillChar:
FillChar(MyVar,SizeOf(MyVar),0); -
定义一个空的constant,并将其分配给var
const cMyVar:TMyVar=(); ... MyVar := cMyVar;
以上所有方法似乎都适用于本例这样的情况。我猜你甚至可以定义一个全局变量来初始化它。
但是有没有首选的方法?或者在某些情况下不建议使用上述任何一种,或者它根本不起作用?
简而言之,初始化本地堆栈变量的明确正确方法tm是什么? :-)
【问题讨论】:
标签: delphi initialization