表示: Delphi
C++
表示設定
System.DynArraySetLength
提供:XE2 API Documentation
Delphi
procedure DynArraySetLength(var a: Pointer; typeInfo: Pointer; dimCnt: NativeInt; lengthVec: PNativeint);
C++
extern PACKAGE void __fastcall DynArraySetLength(void * &a, void * typeInfo, int dimCnt, PNativeInt lengthVec);
プロパティ
| 種類 | 可視性 | ソース | ユニット | 親 |
|---|---|---|---|---|
procedure function |
public | System.pas System.hpp |
System | System |
説明
動的配列のサイズを変更します。
DynArraySetLength は、動的配列の各次元のサイズを変更します。 入力パラメータについては次の表を参照してください。
| パラメータ | 説明 |
|---|---|
a
|
変更対象の動的配列を指すポインタ。 |
typeInfo
|
変更対象の配列の型情報(要素のサイズを計算するために使用します)。 |
dimCnt
|
変更対象の配列の次元数。 |
lengthVec
|
各次元のサイズを示す整数の配列。 |
新たに割り当てられたメモリはゼロで埋められます。
- 2D 動的配列の図
- メモ: Delphi では、DynArraySetLength の代わりに SetLength 手続きを使用することができます。
例
以下のコードでは、DynArraySetLength 手続きを使って、動的配列 A のサイズを変更しています。
type T2DDynamArray = array of array of String; var A: T2DDynamArray; Len: array [0 .. 1] of Integer; begin Len[0] := 3; // Length of the dimension 0 Len[1] := 4; // Length of the dimension 1 DynArraySetLength(Pointer(A), TypeInfo(T2DDynamArray), 2, PLongInt(@len[0])); end.
同じ操作を SetLength 手続きを使って行うこともできます(この方法が推奨されています)。
begin SetLength(A, 3, 4); end.