Вызовите одну процедуру в другой, которая была объявлена ​​до нее - PullRequest
1 голос
/ 18 апреля 2020

У меня есть ситуация:

procedure Compile();
begin
  //stuff
  CompileBatch();
end;

procedure CompileBatch();
begin
  //stuff
end;

Но это, очевидно, не работает, потому что идентификатор "CompileBatch" еще не найден в Compile. Есть ли обходные пути или мне нужно переписать весь код CompileBatch в Compile? Я пользуюсь Free Pascal.

1 Ответ

4 голосов
/ 18 апреля 2020

Вы можете сделать это, объявив CompileBatch forward, например:

procedure CompileBatch(); forward;

procedure Compile();
begin
  //stuff
  CompileBatch();
end;

procedure CompileBatch();
begin
  //stuff
end;
...