【发布时间】:2012-06-19 23:48:50
【问题描述】:
我注意到 SysUtils.pas 中定义的 EStackOverflow 在 Delphi 2009 中被标记为已弃用。我检查过,它在 2007 年也被标记为已弃用。我在这里有一个 Delphi 7 安装磁盘,但我想我会问是否任何人都知道它何时被弃用。
另外,有谁知道为什么,以及用什么代替它?我编写了一个通过递归导致 Stack Overflow 的测试应用程序,我仍然得到一个 EStackOverflow 异常,但是如果我专门为它添加一个处理程序,那么我会得到
[DCC 警告] Unit57.pas(85): W1000 符号“EStackOverflow”已弃用
我知道 EStackOverflow 源自 EExternal,我可以捕获 EExternal 并检查 ExceptionCode 中的 STATUS_STACK_OVERFLOW,但这似乎没有必要,因为它仍然会引发 EStackOverflow 异常。
这只是为了阻止我在自己的代码中抛出 EStackOverflow 吗?
(是的,我意识到在一个名为 StackOverflow 的网站上提出关于 EStackOverflow 的问题具有讽刺意味,是的 我是认真的强>.)
【问题讨论】:
-
我试图用谷歌搜索堆栈溢出问题,我得到了大量指向 stackoverflow.com 的链接... :-) 但我确实设法找到了这个。
标签: delphi exception deprecated stack-overflow