【发布时间】:2012-07-25 20:42:48
【问题描述】:
这是一个后续问题,与我在 stackoverflow 上阅读的另一个问题上看到的答案有关。如果我希望禁用特定函数的溢出检查(根据this question),此代码是否会导致在运行该函数后突然启用溢出检查,即使之前未在编译器选项或代码中启用它?
{$OVERFLOWCHECKS OFF}
// function here
{$OVERFLOWCHECKS ON}
我是否需要将它与 IFOPT 块(可能类似于 this 示例?)结合起来以将溢出检查返回到以前的状态(以免意外启用对非调试版本的溢出检查)?还是两者不同,这就足够了?奖励:如果我确实需要 IFOPT,有条件地禁用溢出检查的具体语法是什么?
【问题讨论】:
-
我个人认为应该对溢出检查特定的代码进行单元测试,并在单元顶部使用 {$OVERFLOWCHECKS On/Off} 进行硬编码,明确覆盖项目设置,并且然后编写并测试您的代码,以免项目设置破坏您的单元。
标签: delphi