IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Программирование (https://www.imho.ws/forumdisplay.php?f=40)
-   -   Delphi: работа с массивами (https://www.imho.ws/showthread.php?t=91001)

anakarn 15.08.2005 01:09

Delphi: работа с массивами
 
Можно ли массиву сразу всем его элементам (а не в цикле) передать значения? Без использования предварительной задачи значаний в const (const a : array [0..2] of real = (1,2,3); ) до begin'а, а уже после него, прям в проге?

PSyton 15.08.2005 10:46

Странный вопрос. А чем цикл плох?
Хотя если значения одинаковые, типа 0, то на С тебе помогло бы ZeroMemory(). или memset()
можно и без цикла.
a[0]=0;
a[1]=10;
...

Willow 21.08.2005 16:56

Можно при вызове функции (процедуры):

Procedure FOO(a:array of integer);
begin
End;
//где-то дальше
FOO([1,2,3,4,5,6,7]);

iam_xor 23.08.2005 06:50

можно заполнить и блоком памяти за один проход

Blacky 24.08.2005 08:47

Цитата:

Сообщение от iam_xor
можно заполнить и блоком памяти за один проход

Только нужно помнить, что динамические массивы, покрайней мере многомерные, не хранят данные в одном непрерывном блоке.

PVitaliy 25.08.2005 19:51

Цитата:

anakarn:
Можно ли массиву сразу всем его элементам (а не в цикле) передать значения? Без использования предварительной задачи значаний в const (const a : array [0..2] of real = (1,2,3); ) до begin'а, а уже после него, прям в проге?
нет, нельзя, только цикл или все что угодно что приведет к поэлементному доступу a[i] = ...
Также ZeroMemory FillMemory могут помочь

Цитата:

Blacky:
Только нужно помнить, что динамические массивы, покрайней мере многомерные, не хранят данные в одном непрерывном блоке.
хранятся непрерывно. В случае многомерных хранятся указатели на указатели на указатели (в зависимости от мерности) на одномерный масив, который непрерывный. Т.е. для двухмерного динамического масива a array of array of integer, a[0] будет указатель на одномерный масив, элементов в котором только, чему равна вторая мерность масива


Часовой пояс GMT +4, время: 13:11.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.