Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi 为什么使用FillChar初始化整数_Delphi_Initialization_Integer - Fatal编程技术网

Delphi 为什么使用FillChar初始化整数

Delphi 为什么使用FillChar初始化整数,delphi,initialization,integer,Delphi,Initialization,Integer,有没有什么特别的原因可以使用FillChar初始化Delphi整数变量,而不仅仅是给它赋一个初始值?我遇到过如下代码。它不在速度敏感环路或任何地方。在这里使用FIllChar,尤其是紧接着另一个变量的更传统的赋值之后,似乎毫无意义。那么我错过了什么 procedure DoSomething; var MyNum: Integer; MyPos: Integer; begin MyNum:= 0; FillChar (MyPos, SizeOf (MyPos), 0); [.

有没有什么特别的原因可以使用FillChar初始化Delphi整数变量,而不仅仅是给它赋一个初始值?我遇到过如下代码。它不在速度敏感环路或任何地方。在这里使用FIllChar,尤其是紧接着另一个变量的更传统的赋值之后,似乎毫无意义。那么我错过了什么

procedure DoSomething;
var
  MyNum: Integer;
  MyPos: Integer;
begin
  MyNum:= 0;
  FillChar (MyPos, SizeOf (MyPos), 0);
  [...]

据我所知,当您需要零数组或可变长度数据时,在这种情况下使用Fillchar。
在您编写的示例中,我猜开发人员认为MyPos将来可以更改它的类型(可能是record?或者它是record?)。

我们只能猜测,但我怀疑您看到的是一个困惑的开发人员留下的一点。也许他认为这将是额外的零y。
FillChar
用于初始化结构(如数组或记录),而不是单个值变量。因此,为了更好的可读性,只需使用一个简单的赋值,比如
MyNum:=0@Ernest+1,用于使用非单词零秒@TLama。“额外零y”可能是我这一天的高潮!我的猜测-作者不确定
MyPos
var最终会是整数类型,并使用了最通用的归零。也可能是他在开玩笑:)