gpt4 book ai didi

delphi - 我可以在一个单元中定义条件并在其他单元中使用它们吗?

转载 作者:行者123 更新时间:2023-12-03 14:52:42 25 4
gpt4 key购买 nike

我正在开发一个大型单元,该单元太大了,我决定将其分成 3 个单元。假设这些单元名称是 MainCommonObjectsMain 单元同时使用其他两个单元,Objects 单元还使用Common 单元。所有 3 个单元中都有代码需要引用这些条件。

问题是,无论我在 3 个单元中的哪一个单元中定义这些条件,其他 2 个单元都看不到它们。我当然不想在所有 3 个单元中复制它们。我也不想在项目中定义它们,因为这些单元将被多个项目使用,在这种情况下,所有使用它的项目都不应该关心条件。

我可以以所有 3 个单元都能看到的方式定义这些条件,而不需要在项目中定义它们吗?

最佳答案

对于条件定义,您唯一的选择是将它们放入 .inc 文件中,然后将其包含在所有三个单元中。

但是,条件定义和$IFDEF并不是实现条件编译的唯一方法。您可以考虑使用 bool 常量而不是条件。只要它在所有三个单元中都可见,您就可以使用 $IF而不是 $IFDEF

{$IF MyConstant}
....
{$IFEND}

或者,从 XE3 开始,您可以使用 {$ENDIF} 终止 {$IF}

我个人在尝试进行条件编译时倾向于支持后一种方法,并且不希望条件具有全局范围。

关于delphi - 我可以在一个单元中定义条件并在其他单元中使用它们吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15442409/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com