delphi - 如何管理delphi单元中的循环引用?

标签 delphi delphi-2010 circular-reference

我在 AfterSignup 单元中使用 BeforSignup,以便能够从 AfterSignup 代码中调用电子邮件变量,最后我遇到了一个问题,因为我想制作一个使用以下代码打开 AfterSignup 窗口的按钮:

 AfterSignup.Show;

但问题是,我必须将 AfterSignup 单元添加到 BeforeSignup 的使用列表中,而这正是我无法做到的,因为我已经将 BeforeSignup 用于 AfterSignup 单元。

我收到一条错误消息,指出循环单位的引用。

最佳答案

简单的解决方案是在 unitBinterface 部分的 uses 子句中添加 unitAunitA

implementation 部分的 uses 子句中的 unitB

更好的解决方案是打破两个(或至少一个)单元的依赖性
您可以通过以下任一方式打破依赖关系

  • 将所有从 unitAunitB 的调用移至 unitB
  • 使用单元 A 和 B 添加第三个共享代码单元。

关于delphi - 如何管理delphi单元中的循环引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8592334/

相关文章:

delphi - Delphi 泛型中的多态性

delphi - Delphi 2010 DeHL序列化XML和自定义属性:如何工作?

.net - 在 .NET 框架中遇到自递归程序集引用

Delphi - 可以从属性中读取属性吗?

sql - 我是否需要在执行查询修改我的记录后执行 SELECT 查询才能查看更改后的结果?

windows - Delphi自删除程序

delphi - 读取大型二进制文件

delphi - 此代码是否由于编译器错误而无法构建?

javascript - 尾递归reduce函数返回[..., [Circular] ]

c - 我可以使用常量结构进行循环引用吗?