Default parameter/ru
Deutsch · English · Español · Français · Polski · Suomi · Русский
Параметры по умолчанию (также называемые необязательными аргументами или аргументами по умолчанию) являются параметрами функции или процедуры, которые содержат значения по умолчанию. Если программист не указал значение для такого параметра, то будет использоваться значение по умолчанию. В случае, если программист указал значение параметра, то использоваться будет указанное программистом значение.
Программист может расширить существующую функцию или процедуру путем добавления некоторого количества параметров, которые будут иметь значения по умолчанию, вместо написания аналогичной функции или процедуры с различным количеством параметров.
Будьте осторожны: если хоть один параметр определен как необязательный, то все последующие параметры тоже будут необязательными. Обязательный параметр не должен идти после необязательного.
Пример deadlineDay
{$mode objfpc}
uses SysUtils, DateUtils;
function deadlineDay(day: integer; month: integer = 0): TDateTime;
var
n: TDateTime;
y, m, d: word;
begin
n := now();
DecodeDate(n, y, m, d);
if month = 0 then
begin
if d > day then
begin
n := IncMonth(n);
DecodeDate(n, y, m, d);
end;
end
else
begin
if month < m then
begin
n := IncYear(n);
end;
decodeDate(n, y, m, d);
m := month;
end;
d := day;
result := EncodeDate(y, m, d);
end;Необязательный параметр используется вместо отсутствующего завершающего параметра в вызове
- при вызове функции
deadlineDay(5)фактически вызываетсяdeadlineDay(5, 0) - при вызове функции
deadlineDay(5, 1)происходит непосредственный вызовdeadlineDay(5, 1)
From the Free Pascal wiki, page "Default parameter/ru", as it stood on 2020-02-12 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.
Talk about this page
Nobody has opened a bench for this page yet. Sign in to open one.
