System.SetLength
Delphi
procedure SetLength(var S: String; NewLength: Integer);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
procedure | public | System.pas | System | System |
説明
文字列変数または動的配列変数の長さを設定します。
S
は、Delphi の文字列変数または動的配列変数です。
NewLength
は、S
の新しい文字数または要素数です。
短い文字列の変数の場合、SetLength は、長さを指示する文字(S[0] の文字)を指定の値に設定するだけです。 この場合、NewLength
は 0 から 255 までの値でなければなりません。
長い文字列変数の場合、SetLength は、S
が参照する文字列を、指定された長さで再度確保します。 文字列内の既存の文字は保持されますが、新たに割り当てられた領域の内容は未定義です。
動的配列変数の場合、SetLength は、S
が参照する配列を、指定された長さで再度確保します。 配列内の既存の要素は保持され、新たに割り当てられた領域は 0 または nil に設定されます。 多次元動的配列の場合、SetLength は、長さを表すパラメータを複数(最大で配列の次元数まで)取ることができます。 各パラメータには、それぞれの次元での要素数を指定します。
SetLength の呼び出しが終わった後、S
が固有の文字列または配列を参照する(つまり、その文字列または配列の参照カウントが 1 である)ことが保証されています。 変数に再度領域を割り当てるために十分なメモリがない場合、SetLength は EOutOfMemory 例外を発生させます。
関連項目
- DynArraySetLength (多次元動的配列の場合)
- Delphi 組み込みルーチン
- EOutOfMemory