Показать сообщение отдельно
  #5  
Старый 24.12.2007, 02:48
Rosenkrantz Rosenkrantz вне форума
Активный
 
Регистрация: 04.12.2007
Адрес: Москва
Сообщения: 234
Версия Delphi: Delphi 7
Репутация: 40
По умолчанию

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

Если в вашем случае возвращать ничего не нужно, то оформляйте процедуру.
Для этого в разделе interface опишите заголовок процедуры:
Код:
procedure Имя_процедуры(Имя_Параметра_1: Тип_Параметра_1;...Имя_Параметра_N: Тип_Параметра_N)
Параметры одного типа можно группировать:
Код:
procedure Имя_процедуры(Имя_Параметра_1, Имя_Параметра_2: Тип_Параметров_1_и_2;...Имя_Параметра_N: Тип_Параметра_N)
Например:
Код:
procedure MyProc(S1, S2: String; N: Integer)
Если вы не планируете изменять значение строкового аргумента внутри процедуры, то лучше передавать его как константу. Для этого перед именем аргумента укажите ключевое слово const:
Код:
procedure MyProc(const S1: String)
Такой вызов экономит ресурсы памяти. Для других типов данных также можно указывать const, но на памяти это никак не отразится.
Если у процедуры нет параметров, объявление заканчивается точкой с запятой сразу после имени процедуры:
Код:
procedure MyProc;
В разделе implementation размещается реализация процедуры - заголовок, идентичный ранее объявленному, и само тело процедуры:
Код:
procedure MyProc(S1, S2: String; N: Integer);
begin
{ тело процедуры }
end;

Для использования процедуры нужно в том модуле, где вы собираетесь ее вызывать, в разделе uses указать имя модуля, в котором описана процедура. Непосредственно для вызова процедуры пишете ее имя и указываете фактические параметры:
Код:
MyProc(FirstName, LastName, 10);

Все, что написано выше про синтаксис объявления процедур, действительно и для функций.
Ответить с цитированием