Форум: "Начинающим";
Текущий архив: 2009.08.09;
Скачать: [xml.tar.bz2];
ВнизВ Delphi точно нет конструктора массивов? Найти похожие ветки
← →
Franzy (2009-06-02 15:11) [0]Запарился уже массивы поэлементно назначать. Знаю, что константу-массив можно объявлять (типа a: array [1..3] of byte = (1,2,3)). А есть ли аналогичные конструкторы для массивов-неконстант? В Фортране можно, например, писать x(5:7) = (/1,2,3/), и тогда 5,6 и 7 элементу массива х будут назначены значения, соответственно, 1, 2 и 3. В Дельфях есть что-нибудь подобное?
← →
Palladin © (2009-06-02 15:14) [1]точно
← →
clickmaker © (2009-06-02 15:26) [2]Разве что для вариантных массивов: VarArrayOf
← →
MBo © (2009-06-02 15:32) [3]процедуру с таким функционалом написать нетрудно
← →
Лёша (2009-06-02 15:54) [4]Для динамических есть.
D: TIntegerDynArray;
...
D := TIntegerDynArray.Create(1, 2, 3);
Delphi 2007
← →
Sapersky (2009-06-02 21:01) [5]Для открытых массивов (при передаче в процедуру) есть конструкторы.
Help/Object Pascal(Delphi) Reference/Procedures and functions/Calling procedures and functions/Open array constructors
← →
Нат © (2009-06-03 02:25) [6]Чтобы использовать заполненный таким образом массив вне процедуры, куда он передается, надо изрядно поломать голову
← →
Германн © (2009-06-03 02:38) [7]
> Franzy (02.06.09 15:11)
>
> Запарился уже массивы поэлементно назначать.
Лень матушка!
> MBo © (02.06.09 15:32) [3]
>
> процедуру с таким функционалом написать нетрудно
>
И даже очень не трудно. Но нужно "мозгами поворочить". И что-то самому сделать.
← →
Sapersky (2009-06-03 10:35) [8]Чтобы использовать заполненный таким образом массив вне процедуры, куда он передается, надо изрядно поломать голову
Ну я думал, копировать его в другой (динамический, например) массив.
С т.з. производительности, конечно, не блестяще, тем более что открытый массив ещё предварительно заталкивается в стек, но для небольших объёмов (трудно представить себе задание вручную массива в тысячу элементов) приемлемо.
← →
sniknik © (2009-06-03 10:47) [9]> трудно представить себе задание вручную массива в тысячу элементов
реальность круче всего что можно себе представить...
http://delphimaster.net/view/2-1243356829/
> пишит что использовано слишком много констант (примерно так) это ошибка
← →
Franzy (2009-06-11 12:04) [10]2Германн
Причем здесь лень? Согласитесь, что писать
x=(/10,2,7/)
гораздо удобнее, чем
x[1]:=10;
x[2]:=2;
x[3]:=7;
← →
Palladin © (2009-06-11 12:16) [11]
> x[1]:=10;
> x[2]:=2;
> x[3]:=7;
Это - назначение констант. Которое так и оформляется:
Const
x: array [1..3] of byte = (1,2,3)
в чем проблемы?
← →
Palladin © (2009-06-11 12:18) [12]Хотя сдается мне что ты просто не знаешь Паскаля.
Type
TAOf3B=Array [1..3] of byte;
Const
a:TAOf3B = (1,2,3);
var
x:TAOf3B;
begin
x:=a;
end;
← →
QAZ (2009-06-11 12:29) [13]
> А есть ли аналогичные конструкторы для массивов-неконстант?
>
это должна быть глобальная переменная
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.08.09;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.005 c