Динамические массивы
Динамические массивы
Ада позволяет не указывать размеры массива при написании программы. В этом случае размеры массива не фиксируются во время компиляции программы, а определяются во время ее выполнения, что во многих случаях более предпочтительно. Массивы подобного вида известны как динамические массивы. Кроме того, в отличие от многих других языков программирования, Ада позволяет использование динамических массивов в качестве значения результата, возвращаемого функцией.
declare
X : Integer := Y -- значение Y описано где-то в другом месте
A : array (.X) of Integer;
begin
for I in A'Range loop . . . end loop;
end;procedure Demo(Item : String) is
Copy : String(Item'First..Item'Last) := Item;
Double : String( * Item'Length) := Item & Item; begin . . . |
Следует заметить, что не стоит позволять вводу пользователя устанавливать размер массива,
и приведенный пример (с декларативным блоком)
не должен использоваться как способ решения этой задачи.
Использование второго примера наиболее типично.
Содержание раздела