Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Exit [D7]


Страницы:   1 2

Цукор 5 ©   (2005-09-21 01:56:00) 

Предположим имеется такой вот сабж :

function MyLOL:Integer;
begin
...
 if условие then
 begin
   Result:=1;
   Exit;
 end else
 begin
   Result:=2;
   Exit;
 end;
end;


таких вот  begin Result:=1; Exit;end приличное кол-во. Я же хочу их вынести в ф-цию.Типа Exit_(I:Integer) но сабж не получатся ибо команда Exit не выполняется для основного кода. Можно ли как-нибудь выйти из этого положения???


Leonid Troyanovsky   (2005-09-21 10:52:00) [21]


> Внук ©   (21.09.05 09:04) [4]
> >>Можно ли как-нибудь выйти из этого положения???
>  Можно. Не пользоваться Exit,goto,break,continue,halt и


Хотел бы я увидеть приложение, обходящееся без, скажем, break.
Видимо, оно должно обходиться и без for.

--
Regards, LVT.


evvcom   (2005-09-21 09:30:00) [22]

И еще совет.

> Result:=1;

гораздо нагляднее будет

const
 MyLOL_RES_OK = 0;
 MyLOL_RES_<смысловой идентификатор 1> = 1;
 MyLOL_RES_<смысловой идентификатор 2> = 2;

...
 Result := MyLOL_RES_OK;
...
 Result := MyLOL_RES_<смысловой идентификатор 1>;
// и т.д.


Внук   (2005-09-21 09:04:00) [23]

>>Можно ли как-нибудь выйти из этого положения???
 Можно. Не пользоваться Exit,goto,break,continue,halt и т.д., искуственно прерывающих выполнение блока, а проектировать приложение тщательнее. Имхо.


Quattro   (2005-09-21 03:53:00) [24]

йопт..хотел сказать если выполняется условие


Джо   (2005-09-21 02:36:00) [25]


> Можно ли как-нибудь выйти из этого положения???

возбудить исключение.


Quattro   (2005-09-21 02:27:00) [26]

а зачем здесь Exit??
begin
  Result:=1;
  Exit;
если условие не выполняется ,дело дальше не пойдёт.....


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо