Delphi Language Guide Delphi for Microsoft Win32 Delphi for the Microsoft. Net framework



Yüklə 0,84 Mb.
Pdf görüntüsü
səhifə92/294
tarix02.01.2022
ölçüsü0,84 Mb.
#41395
1   ...   88   89   90   91   92   93   94   95   ...   294
DelphiLanguageGuide

Multidimensional Dynamic Arrays
To declare multidimensional dynamic arrays, use iterated 
array of ...
 constructions. For example,
79


type TMessageGrid = array of array of string;
var Msgs: TMessageGrid;
declares a two-dimensional array of strings. To instantiate this array, call 
SetLength
 with two integer arguments.
For example, if 
I
 and 
J
 are integer-valued variables,
SetLength(Msgs,I,J);
allocates an I-by-J array, and 
Msgs[0,0]
 denotes an element of that array.
You can create multidimensional dynamic arrays that are not rectangular. The first step is to call 
SetLength
, passing
it parameters for the first n dimensions of the array. For example,
var Ints: array of array of Integer;
SetLength(Ints,10);
allocates ten rows for 
Ints
 but no columns. Later, you can allocate the columns one at a time (giving them different
lengths); for example
SetLength(Ints[2], 5);
makes the third column of 
Ints
 five integers long. At this point (even if the other columns haven't been allocated)
you can assign values to the third column - for example,
 Ints[2,4] := 6
.
The following example uses dynamic arrays (and the IntToStr function declared in the 
SysUtils
 unit) to create a
triangular matrix of strings.
var
  A : array of array of string;
  I, J : Integer;
  begin
    SetLength(A, 10);
    for I := Low(A) to High(A) do
      begin
        SetLength(A[I], I);
        for J := Low(A[I]) to High(A[I]) do
          A[I,J] := IntToStr(I) + ',' + IntToStr(J) + ' ';
      end;
  end;

Yüklə 0,84 Mb.

Dostları ilə paylaş:
1   ...   88   89   90   91   92   93   94   95   ...   294




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin