Basic Pascal Tutorial/Chapter 4/Forward Referencing

From Lazarus wiki
Revision as of 19:59, 20 April 2013 by Jwdietrich (talk | contribs)
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

4F - Forward Referencing (author: Tao Yue, state: unchanged)

After all these confusing topics, here's something easy.

Remember that procedures/functions can only see variables and other subprograms that have already been defined? Well, there is an exception.

If you have two subprograms, each of which calls the other, you have a dilemma that no matter which you put first, the other still can't be called from the first.

To resolve this chicken-and-the-egg problem, use forward referencing.

procedure Later (parameter list); forward;

procedure Sooner (parameter list);
begin
  ...
  Later (parameter list);
end;
...
procedure Later;
begin
  ...
  Sooner (parameter list);
end;

The same goes for functions. Just stick a forward; at the end of the heading.

previous contents next