gpt4 book ai didi

delphi - 为什么异常后执行会跳转到proc的末尾?

转载 作者:行者123 更新时间:2023-12-05 08:15:43 25 4
gpt4 key购买 nike

当调试任何过程/函数/方法中的某些代码时发生未处理的异常时,调试器会停在那里并显示消息。

如果我现在继续逐步调试,执行会直接从产生异常的行跳转到当前过程的末尾(如果没有 finally block )。

继续当前程序的下一行不是同样好吗?

为什么跳到proc的末尾继续调用过程?这是设计使然还是有充分的理由?

最佳答案

异常是意想不到的情况,这就是处理停止的原因。

跳转到程序末尾是一个不可见的 finally 语句,用于释放任何本地“分配的”内存,如字符串、接口(interface)、记录等。

如果你想处理一个异常,你必须用 try .. except 语句封装可以给出异常的调用,并使用“on”子句来只处理你想处理的特定异常。

在 except 中,您可以检查调试器中的变量,如果需要,您可以在代码中再次引发异常。

关于delphi - 为什么异常后执行会跳转到proc的末尾?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/601674/

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