gpt4 book ai didi

Delphi 2007 - "exceptions to ignore"列表的编程操作

转载 作者:行者123 更新时间:2023-12-03 01:53:41 25 4
gpt4 key购买 nike

我有一个应用程序,在调用 FormatDateTime 时偶尔会返回整数溢出。我不知道什么情况会触发此问题,尽管我发现提到了该问题 herehere .

我当前的解决方法是包装函数并处理异常:

function FormatDateTimeEx (const FormatString : ANSIString ;
DateTime : TDateTime) : ANSIString ;
begin
try
Result := FormatDateTime (FormatString, DateTime) ;
except
Result := '???' ;
end ;
end ;

这解决了导致编译后的可执行文件崩溃的问题,但我也希望当我在 IDE 中运行程序时调试器不会因 EIntOverflow 异常而中断。我不想通过告诉 IDE 忽略 EIntOverflow 异常来实现此目的,因为这样,当发生未捕获的整数溢出时,它就不会在其他情况下中断(对吗?)。

对于可能发生异常并且您已经知道并正在处理它的情况,是否有一种编程方式(编译时或运行时)告诉 IDE 在本地忽略异常类?

最佳答案

Is there a programmatic way (compile-time or run-time) of telling the IDE to locally ignore an exception class, for those occasions when an exception can occur, and you already know that and are handling it?

没有。

您无法要求调试器忽略某些 EIntOverflow 异常,但不忽略其他异常。你要么忽略它们全部,要么不忽略它们。控制调试器中哪些异常中断的唯一方法是通过异常类。您不能要求调试器忽略程序某一部分的异常,而忽略另一部分的异常。

坦率地说,在我看来,解决这个问题的正确方法是首先弄清楚为什么会触发这些异常。并采取一些措施来防止它们发生。这些异常是代码中错误的症状,您需要立即解决。

关于Delphi 2007 - "exceptions to ignore"列表的编程操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22598095/

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