Code: |
procedure TForm1.Button1Click(Sender: TObject); type T2DIntArray = arrayofarrayof Integer; var DynArray: T2DIntArray; V: Variant; i, k: Integer; begin V := VarArrayCreate([0, 1, 0, 1], varInteger); V[0, 0] := 00; V[0, 1] := 01; V[1, 0] := 10; V[1, 1] := 11; DynArrayFromVariant(Pointer(Dynarray), V, TypeInfo(T2DIntArray)); for i := 0to High(Dynarray) do for k := 0to High(Dynarray[i]) do memo1.Lines.add(IntToStr(DynArray[i, k])); end;
{ The problem with DynArrayFromVariant is that you can only use it on variant arrays with 0-based indexes, trying to use it on an array with 1 as lower bound blows up. Since the documentation is silent on that i would consider it a bug. } |
Использование DynArrayFromVariant
Использование DynArrayFromVariant
- Подробности
- Родительская категория: Язык программирования Дельфи
- Категория: Работа с массивами
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!