|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Расположение функции, процедуры
Вопрос, у меня, довольно общий.
В функции (методе класса) несколько раз повторяется некое действие, логично вынести его в отдельную функцию: Код:
function GetTag(Str: String; Tag: String):String; var p1, p2: Word; begin . . . end; function TFB2Folder.GetAutorTitle(FileName: String):String; var F: File of Byte; x: Byte; u, titleInfo: UTF8String; begin . . . Result:= GetTag([параметр]; [параметр]); . . . Result:= Result+GetTag([параметр]; [параметр]); end; Код:
procedure SomeProc ; var . . . . . . begin // блок расположенный . . . // внутри end; // основной процедуры . . . begin // реализация . . . // процедуры SomeProc end; |
#2
|
||||
|
||||
Есть понятие inline метода.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#3
|
|||
|
|||
Да не, тут проще.
Можно описать функуцию/процедуру внутри другой функции/процедуры. Она будет "видна" только внутри этой функции и может видеть параметры функции. Например: Код:
function IncParam(a : integer) : integer; function IncPositive : Integer; begin Result := a + 1; end; function IncNegative : Integer; begin Result := a - 1; end; begin if a >= 0 then Result := IncPositive Else Result := IncNegative; end; |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Помидоркин (29.03.2015)
|