gpt4 book ai didi

delphi - 如何抛出 Delphi 无法捕获的异常?

转载 作者:行者123 更新时间:2023-12-03 15:21:14 28 4
gpt4 key购买 nike

是否可以在 Delphi 中构造一段代码,使假设的 EChuckNorrisException 无法捕获?

对于 Java 编程语言,我刚刚发现这个问题已在 Uncatchable ChuckNorrisException 中得到了的回答。

最佳答案

没有。在 Delphi 中,可以引发任何对象(TObject 后代),尽管按照惯例,这通常仅限于从基 Exception 派生的对象类(class)。并且可以创建一个全面的异常处理程序来捕获任何东西。

大多数尝试以某种方式报告信息的包罗万象的异常处理程序如下所示:

try
...
except
on E: Exception do
...
end;

因此,如果您引发的某些内容不是从 Exception 继承的,它将通过这种样式而不会被捕获。

但是,也可以这样写:

try
...
except
...
end;

这种类型的异常处理程序不会得到任何结果。

如果引发未在任何地方捕获的异常,程序将立即终止并出现错误。如果这是预期的效果,则可以通过使用非零错误代码调用 Halt 来完成相同的操作。

关于delphi - 如何抛出 Delphi 无法捕获的异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13883462/

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