Вниз
Скачать: CL | DM;

динамический массив   Найти похожие ветки 

← →
Std   (2006-04-07 01:09) [0]

Доброго времени.
Подскажите можно ли ка кто добавлять в массив элементы не задавая при этом размер массива?
тоесть зделать типа

var
arr:array of integer;
n:integer;
begin
...
n:=0;
if a<15 then
arr[n]:=a;

при этом а берется из большого списка, и заранее не известно сколько будет элементов в вассиве..


← →
unknown ©   (2006-04-07 01:40) [1]


> Std   (07.04.06 01:09)
> не задавая при этом размер массива

Как это вы себе представляете?

> при этом а берется из большого списка, и заранее не известно
> сколько будет элементов в вассиве

Ну и что?
Допустим n - счетчик строк в списке, a - значение из строки списка, тогда
получится примерно следующее:
if n=Length(arr) then
 SetLength(arr,n+1);
arr[n]:=a;


← →
Германн ©   (2006-04-07 02:02) [2]


> Std   (07.04.06 01:09)  
>
> Доброго времени.
> Подскажите можно ли ка кто добавлять в массив элементы не
> задавая при этом размер массива?

Нельзя, никак, никогда.  Увы.
Тебе посоветовали способы оптимизации вызовов SetLength при загрузке файла в динамический массив. Имхо - это максимум возможного.


← →
Anatoly Podgoretsky ©   (2006-04-07 09:18) [3]

Можно, но только будет рантайм ошибка


← →
tesseract ©   (2006-04-07 09:42) [4]

tlist - ему размер не задаётся.


← →
Std   (2006-04-07 15:25) [5]

вот зделал вот так:

var
i,j:integer;
arr:array of integer;
begin
i:=0;
j:=1;
цикл который проверяет весь список
if x<15 then
begin
 SetLength(arr,j);
 arr[i]:=a;
 inc(i);
 inc(j);
end;
конец цикла

работает нормально, так что всем спасибо за беспокойство



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
2-1144620145
mfender
2006-04-10 02:02
2006.04.23
Отследить изменение значения поля


15-1143818425
Svetlana_K
2006-03-31 19:20
2006.04.23
Как отследить запуск программы?


2-1144386533
Fostr
2006-04-07 09:08
2006.04.23
Win2000 и WinXP


2-1144234255
Id
2006-04-05 14:50
2006.04.23
DBComboBox1.Style:=csDropDownList


2-1144563094
DimDim
2006-04-09 10:11
2006.04.23
Как заблокировать отдельные пункты в ComboBox?




   Наверх