![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Присвоение в вариантном многомерном массиве. [D6, Win2k, WinXP]
Kacnep © (2005-07-04 07:45:00)Привет мастерам. Опишу свой вопрос на примере из хелпа к дельфи.
Дельфи 6.
Тут все норально и работает ...
var
S: string;
Mas: Variant;
begin
Mas:= VarArrayCreate([0, 3], varVariant);
Mas[0]:= VarArrayHighBound(Mas, 1);
Mas[1]:= 'Быть или не быть?';
Mas[2]:= 12.34567;
Mas[3]:= VarArrayOf( [7, 354, 0, 21, 66, 189] );
S:= VarToStr( Mas[1] ); // S:= 'Быть или не быть?'
S:= VarToStr( Mas[3][1] ); // S := 354
end;
А вот теперь делаем наоборот иии :(((
Mas[3][1]:=45763; Ругается что не может присвоить
Тоже и с VarArrayPut(Mas[3],457663,[1])
Вопрос 1 как присвоить?
Вопрос 2 Могули присвоить не 45763 а строку 'Не работает'
Спасибо заранее
Kacnep (2005-07-04 08:39:00) [1]Спасибо
Это я проверил -это работает. Виноват что сразу не написал.
А почему напрямую не хотит?
Mas[3][1]:=45763; ведь чтение идет напрямую???
VMcL (2005-07-04 08:20:00) [2]P.S.
Tmp: Variant;
VMcL (2005-07-04 08:18:00) [3]>> Kacnep © (04.07.05 07:45)
1.
Tmp := Mas[3];
Tmp[1] := 45763;
Mas[3] := Tmp;
2.
Да.