配列をクリアしたい場合は、次のように記述します。
working:= empty;
実際には、配列の内容を... にコピーすることにより、クリアを行います。これはグローバル変数であるため、0 で初期化されるため、あなたの場合は voidです。empty
working
empty
私見では、そのようなグローバル変数を定義することはお勧めできません。グローバル変数はほとんどの場合 (自分が何をしているのかわかっていない限り) 悪であり、それらを 0 で初期化するように宣言する場合は意味がありません。
実際、empty
がスタック上で (つまり、var
メソッド内で) 初期化された場合、その時点でスタック上にあるもの、つまりランダム データで埋められます。
参照カウント型 ( など) を含まない配列を高速に初期化したい場合は、次のようstring
に記述できます。
fillchar(working,sizeof(working),0);
また、配列にマネージド型が含まれている場合は、次のように記述できます。
finalize(workingWithStringInside); // to safely release internal managed types
fillchar(workingWithStringInside,sizeof(workingWithStringInside),0);
これは可能な限り高速なコード (変数のコピーよりも高速) であり、より適切なオプションのように思えます。