delphi 在DPR中,当程序A需要程序B,而程序B需要程序A时,如何操作

jdgnovmf  于 2022-11-23  发布在  其他
关注(0)|答案(1)|浏览(111)

在DPR里

procedure A;
begin
  ...
  B;
  ...
end;

procedure B;
begin
  ...
  A;
  ...
end;

如何在DPR内部处理这种情况?在普通单元中,这是很容易的,我只需要在单元的interface部分声明这两个过程,但在DPR内部如何做,因为它们没有接口部分。

qkf9rpyu

qkf9rpyu1#

需要使用前向声明:

procedure B; forward;

procedure A;
begin
  if 1 + 1 = 3 then
    B;
end;

procedure B;
begin
  if 1 + 1 = 3 then
    A;
end;

(Of当然,前向声明也可以用在单元的实现部分,所以你不需要仅仅为了让两个实现部分的例程互相知道而污染单元的接口。)

相关问题