【格式】
函数声明;forward;
【用途】
forward 关键字用于前向声明一个局部函数,比如:
function Calculate(X, Y: Integer): Real; forward;
声明了一个 Calculate 函数,那么后面必需重新声明并实现这个函数,类似于下面:
function Calculate; ... { declarations } begin ... { statement block } end;
函数的实现部分,参数可以省略,但如果不省略,则必需与前向声明中的完全一致(不包含默认值)。
前向声明的主要用途是用于处理循环引用的问题,比如函数 A 调用了函数 B,而函数 B 又调用了函数 A 的情况。它一般用在 implementation 小节内部,如果函数 A/B 是在 interface 部分都声明了的话,不需要用 forward 语法。