Как узнать сабж?
Почемуто у меня длинна всегда равна единице и не зависит от фактической длинны в конструкторе.
А у вас как ? Пожалуйста проверьте:
DELPHI Код:
{запустите в именно паксе! а не в делфи }
program tvarTest;
uses SysUtils;
procedure OpenArrayTest(const OpArray: array of Integer);
var
i: Integer;
begin
print('Длинна массива : '+intToStr(length(OpArray)));
print('Последний индекс: '+intToStr(High(OpArray) ));
for i := Low(OpArray) to High(OpArray) do
begin
print('Array ' +IntToStr( i )+' = '+ IntToStr( OpArray[i] ) );
end;
end;
begin
OpenArrayTest([11,22,33,44,55,66,77]);
end.
вот что выводит у меня
Код:
Длинна массива : 1 //а должно быть 7
Последний индекс: 0 //а должно быть 6
Array 0 = 11
Добавлено через 52 секунды
Как узнать длинну открытого массива без передачи дополнительных параметров?