Delphi如何在错误时退出到顶级例程

标签 delphi exception control-flow

在 Delphi 中,我有一个例程层次结构。例程“A”调用“B”,“B”调用“C”,“C”调用“D”。 “D”做了一些检查,它遇到了某种类型的错误,可能是异常,也可能只是逻辑错误。无论如何,当“D”遇到错误时,是否可以将控制权传递回“A”,而无需“D”返回“失败”代码,“C”检查该代码,“C”返回失败代码,“B”返回失败代码' 检查等等...?

最佳答案

有两种方法可以满足您的需求:

  1. 返回错误/状态代码,并让调用堆栈上的每个函数检查该代码。
  2. 提出异常并在高层处理它。

您不想使用选项 1,因此只剩下选项 2。

关于Delphi如何在错误时退出到顶级例程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15361597/

相关文章:

Java 通过抛出异常进行流程控制

delphi - 如何将 IAutoComplete 与 TStringsAdapter 一起使用?

delphi - 如何处理TCPClient中接收到的数据? (德尔福 - 印地)

Delphi 数字键盘快捷键

java.lang.NoClassDefFoundError

android - 停止动画并重新开始

Node.js 控制流 : callbacks or promises?

flash - 当我们使用 Flash 时如何在 WebBrowser 中禁用右键单击! (德尔福)

c++ - 如果异常保存在 std::exception_ptr 中,那么在 catch 语句之外使用异常是否安全?

java - 使用嵌套 for 循环填充多维数组