Модуль: System
Описание
Функция блокирует массив значений типа Variant и возвращает указатель на начало массива. Блокировка состоит в том, что после вызова данной функции размеры массива изменить будет нельзя, и все вызовы процедуры VarArrayRedim не будут приводить к успеху. Разблокировать массив можно с помощью процедуры VarArrayUnlock. Если параметр А не является Variant-массивом, то возникает исключение EVariantError.
Пример
type
PMas = ^TMas;
TMas = array[0..100] of Integer;
var
V: Variant;
I, K: Integer;
P: PMas;
begin
V:= VarArrayCreate([0, 100], varInteger);
P:= VarArrayLock(V);
for I:= 0 to 100 do P^[I]:= I*I;
VarArrayUnlock(V);
K:= V[20]; // K := 400
end;