Sign in Join
Wiki copytemporary

Default parameter/ru

Deutsch · English · Español · Français · Polski · Suomi · Русский

Параметры по умолчанию (также называемые необязательными аргументами или аргументами по умолчанию) являются параметрами функции или процедуры, которые содержат значения по умолчанию. Если программист не указал значение для такого параметра, то будет использоваться значение по умолчанию. В случае, если программист указал значение параметра, то использоваться будет указанное программистом значение.

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

Будьте осторожны: если хоть один параметр определен как необязательный, то все последующие параметры тоже будут необязательными. Обязательный параметр не должен идти после необязательного.

Пример deadlineDay

pascal
{$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;

Необязательный параметр используется вместо отсутствующего завершающего параметра в вызове


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.

Revision 1, last changed by WikiArchive .

Talk about this page

Nobody has opened a bench for this page yet. Sign in to open one.