Delphi #IF(DEBUG) 等效吗?
Delphi 是否有与 C# #if(DEBUG) 编译器指令等效的代码?
Is there a Delphi equivalent of the C# #if(DEBUG) compiler directive?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
Delphi 是否有与 C# #if(DEBUG) 编译器指令等效的代码?
Is there a Delphi equivalent of the C# #if(DEBUG) compiler directive?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
用这个:
Use this:
如果应用程序在 IDE 调试器下运行,则设置 DebugHook。 与编译器指令不同,但仍然非常有用。 例如:
DebugHook is set if an application is running under the IDE debugger. Not the same as a compiler directive but still pretty useful. For example:
除了 lassevk 所说的之外,您还可以使用其他一些编译器评估方法(我相信从 Delphi 6 开始):
要检查编译器是否具有此功能,请使用 :
这有多种用途。
例如,您可以检查 RTL 的版本; 来自德尔福帮助:
此外,还可以从代码中检查编译器版本本身:
我经常做的另一件事是在尚未定义符号时定义它(有利于向前兼容性),如下所示:
希望这有帮助!
Apart from what lassevk said, you can also use a few other methods of compiler-evaluation (since Delphi 6, I believe) :
To check if the compiler has this feature, use :
There are several uses for this.
For example, you could check the version of the RTL; From the Delphi help :
Also, the compiler version itself can be checked, again from the code:
Another thing I do regularly, is define a symbol when it's not defined yet (nice for forward-compatiblity), like this :
Hope this helps!
这些控制指令可用:
并且可以按如下所示使用它们:
These control directives are available:
and they can be used as shown here: