Ада-95. Компилятор GNAT

       

Параметры-значения


Параметры-значения позволяют указывать значения для переменных внутри настраиваемого модуля:

generic

type Element is private; Size: Positive := 200;

package Stacks is

procedure Push... procedure Pop... function Empty return Boolean;

end Stacks;

package body Stacks is

Size : Integer; theStack : array(1..Size) of Element;

. . .

Тогда, создать экземпляр настраиваемого модуля можно одним из следующих способов:

package Fred is new Stacks(Element => Integer, Size => 50);

package Fred is new Stacks(Integer, 1000);

package Fred is new Stacks(Integer);

Следует обратить внимание на то, что при конкретизации настраиваемого модуля фактический параметр-значение должен быть обязательно указан только в случаях когда для формального параметра-значения не представлено значение по-умолчанию.

В качестве параметров-значений допускается использование строк.

generic

type Element is private; File_Name : String;

package ....

Примечательно, что параметр File_Name, имеющий строковый тип String, - не ограничен (not constrained).

Это идентично строковым параметрам для подпрограмм.



Содержание раздела