Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Динамические массивы [D7, WinXP]


terra0 ©   (2005-06-08 20:44:00) 

Возможно ли в паскале, в теле программы присвоить динамическому массиву (целочисленного типа) сразу набор значений, что-то типа

var
a:array of Integer;

begin
SetLength(a,5);
a:=(1,2,3,4,5);
end;

или что-то подобное, может я не знаю синтаксиса, или это невозможно в принципе?
 С уважением, terra0


terra0   (2005-06-08 20:59:00) [1]

Большое спасибо, хотя конечно по сравнению с Си это та еще проблемка :)


Alx2   (2005-06-08 20:56:00) [2]

Не в курсе, есть ли стандартные функции, но собственное можно написать примерно так:

type TIntegerArray = array of integer;
 function SetArray(Data: array of integer): TIntegerArray;
 var k: integer;
 begin
   SetLength(Result, Length(Data));
   for k := Low(Data) to High(Data) do
     Result[k - Low(Data)] := Data[k]; // K-Low(Data) - параноическое "на всякий случай" :)
 end;
var A: TIntegerArray;
begin
 A := SetArray([1, 2, 3, 4, 5]);
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо