Иллюстрированный самоучитель по Delphi 7 для начинающих

Объявление функции

Объявление функции в общем виде выглядит так:

function Имя (параметр1: тип1,…, параметрК: типК): Тип; var
// здесь объявления локальных переменных begin
// здесь инструкции функции
Имя: = Выражение; end;

Где:

  • function – зарезервированное слово языка Delphi, обозначающее, что далее следуют инструкции, реализующие функцию программиста;
  • имя – имя функции. Используется для перехода из программы к инструкциям функции;
  • параметр – это переменная, значение которой используется для вычисления значения функции. Отличие параметра от обычной переменной состоит в том, что он объявляется не в разделе объявления переменных, который начинается словом var, а в заголовке функции. Конкретное значение параметр получает во время работы программы в результате вызова функции из основной программы;
  • тип – тип значения, которое функция возвращает в вызвавшую ее программу.

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

В качестве примера в листинге 6.3 приведены функции isint и isFioat. Функция isint проверяет, является ли символ, соответствующий клавише, нажатой во время ввода целого числа в поле редактирования, допустимым. Предполагается, что допустимыми являются цифры, клавиши Enter и Backspace. Функция IsFloat решает аналогичную задачу, но для дробного числа. У функции IsFloat два параметра: код нажатой клавиши и строка символов, которая уже введена в поле редактирования.

Листинг 6.3. Примеры функций.

// проверяет, является ли символ допустимым
// во время ввода целого числа
function Islnt(ch: char): Boolean;
begin
if (ch >= '0'} and (ch <= '9') // цифры
or (ch = 113) // клавиша Enter
or (ch = #8) // клавиша <Backspace>
then Islnt: = True // символ допустим
else Islnt: = False; // недопустимый символ
end;
// проверяет, является ли символ допустимым
// во время ввода дробного числа
function IsFloat(ch: char; st: string): Boolean;
begin
if (ch >= '0') and (ch <= '9') // цифры
or (ch = #13) // клавиша Enter
or (ch = #8) // клавиша <Backspace>
then
begin
IsFloat: = True; // символ верный
Exit; // выход из функции
end;
case ch of
'-': if Length(st) = 0
then IsFloat: = True; ',':
if (Pos(',',st) = 0)
and (st[Length(st)]'>= '0') and (st[Length(st)] <= '9')
then // разделитель можно ввести только после цифры // и если он еще не введен
IsFloat: = True; else // остальные символы запрещены
IsFloat: = False;
end;
end;
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.