Ann*_*ard 6 delphi compiler-directives
这应该是这样工作还是我做错了什么?
我在我的项目源代码中有这个代码:
{$IFDEF DEBUG}
ADebugUnit,
{$ELSE}
ARelaseUnit,
{$ENDIF}
Run Code Online (Sandbox Code Playgroud)
我希望在调试模式下使用ADebugUnit,但在发布模式下编译时使用AReleaseUnit.当我选择向项目添加新单元时,这种方法效果很好.当我这样做时,它基本上将处理代码,并且只保留与项目当前设置的任何配置相关的单位.
例如,如果配置设置为Debug,那么在向项目添加新单元后,上面的代码将更改为:
ADebugUnit,
Run Code Online (Sandbox Code Playgroud)
或者,如果我的配置设置为Release,则在添加新单元后将更改为以下内容:
ARelaseUnit,
Run Code Online (Sandbox Code Playgroud)
添加新单元后,我必须始终将其恢复为条件语句.有没有办法在没有添加新单元干扰的情况下实现这一目的?
IDE 拥有大部分 DPR 文件。请小心您对其所做的操作,否则您将面临所观察到的风险(或更糟糕的 \xe2\x80\x94,具体取决于更改的性质,IDE 有时可能会决定不允许在以下位置编译该文件)全部!)。
\n\n除此之外,这意味着您不能有条件地将单位包含在 DPR 文件中。无论您试图解决什么问题,您都必须找到另一种解决方案。
\n\n例如,也许您可以使用项目中其他位置的单元而不是 DPR 文件。
\n\n或者,您可以将这两个单元合并为一个单元,然后有条件地编译其内容。
\n\n或者,也许您可以一直使用调试代码,因为这会增加您发布测试过的相同代码的机会。
\n\n或者,如果此问题仅在您使用“添加单元”对话框时出现,您可以放弃该对话框并手动编辑 DPR 文件。正如您所注意到的,除了使用子句被重写之外,向项目添加单元背后没有其他魔法。
\n| 归档时间: |
|
| 查看次数: |
999 次 |
| 最近记录: |