Указание значения параметра по-умолчанию
Для любых "in"-параметров ("in" или "in out"), в спецификации подпрограммы можно указать значение параметра по-умолчанию.
Синтаксис установки значения параметра по-умолчанию подобен синтаксису определения инициализированных переменных и имеет следующий вид:
with Ada.Text_IO; use Ada.Text_IO;
procedure Print_Lines(No_Of_Lines: Integer := 1) is begin for Count in 1 .. No_Of_Lines loop New_Line; end loop; end Print_Lines; |
Такое описание устанавливает значение параметра No_Of_Lines
для случаев когда процедура Print_Lines
вызывается без указания значения этого параметра (позиционного или именованного).
Таким образом, вызов этой процедуры может иметь вид:
Print_Lines; -- это печатает одну строку Print_Lines(6); -- переопределяет значение параметра -- установленное по-умолчанию |
Подобно этому, если процедура Write_Lines была описана как:
with Ada.Text_IO; use Ada.Text_IO;
procedure Write_Lines(Letter : in Char := '*'; No_Of_Lines : in Integer := 1) is begin for I in 1 .. No_Of_Lines loop for I in 1 .. 80 loop Put(Letter); end loop; New_Line; end loop; end Write_Lines; |
то она может быть вызвана следующими способами:
Write_Lines; -- для параметров Letter и No_Of_Lines
-- используются значения устанавливаемые -- по-умолчанию Write_Lines('-'); -- значение по-умолчанию - для No_Of_Lines Write_Lines(no_of_lines => 5); -- значение по-умолчанию - для Letter Write_Lines('-', 5) -- оба параметра определены |