![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Возврат результата из вложенной функции
XCoder © (2014-02-06 15:26:00)Есть функция DoSomething, которая включает в себя 2 функции - InternalDoSomethingA и InternalDoSomethingAA. Как КОРРЕКТНО возвратить результат DoSomething из вложенной функции InternalDoSomethingAA:
function DoSomething: Boolean;
procedure InternalDoSomethingA;
procedure InternalDoSomethingAA;
begin
Result := True;
end;
begin
end;
begin
end;
icWasya (2014-02-06 17:28:00) [1]А вот ещё
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1390751141&n=3
XCoder (2014-02-06 15:47:00) [2]
> DVM © (06.02.14 15:31) [6]
> Это что ли надо?
Да, раньше не приходилось так возвращать результат, вот и усомнился.
DVM (2014-02-06 15:31:00) [3]Это что ли надо?
function DoSomething: Boolean;
procedure InternalDoSomethingA;
procedure InternalDoSomethingAA;
begin
DoSomething:= True;
end;
begin
end;
begin
end;
Rouse_ (2014-02-06 15:30:00) [4]Ну и вариант 2:
function DoSomething: Boolean;
function InternalDoSomethingA: Boolean;
function InternalDoSomethingAA: Boolean;
begin
Result := True;
end;
begin
Result := InternalDoSomethingAA
end;
begin
Result := InternalDoSomethingA;
end;
XCoder (2014-02-06 15:30:00) [5]
> Rouse_ © (06.02.14 15:28) [1]
Спасиб
XCoder (2014-02-06 15:29:00) [6]или лучше так:
function DoSomething: Boolean;
var
Res: Boolean;
procedure InternalDoSomethingA;
procedure InternalDoSomethingAA;
begin
Res := True;
end;
begin
end;
begin
Result := Res;
end;
изыди (2014-02-06 15:29:00) [7]
function DoSomething: Boolean;
function InternalDoSomethingA: Boolean;
function InternalDoSomethingAA: Boolean;
begin
Result := True;
end;
begin
Result := InternalDoSomethingAA;
end;
begin
Result := InternalDoSomethingA;
end;
Rouse_ (2014-02-06 15:28:00) [8]
function DoSomething: Boolean;
procedure InternalDoSomethingA;
procedure InternalDoSomethingAA;
begin
DoSomething := False;
end;
begin
InternalDoSomethingAA
end;
begin
InternalDoSomethingA;
end;