捕获 C 语言中的所有异常
在 Java 中,try-catch 块允许开发人员优雅地处理异常。 catch (Throwable t) 语句捕获所有异常。类似地,在 C 中,以下代码块捕获所有异常:
<code class="cpp">try { // ... } catch (...) { // ... }</code>
虽然此机制可能对调试目的有用,但通常被认为是糟糕的设计。在 C 中,最好捕获特定异常并相应地处理每个异常。
但是,如果您正在使用需要重写的遗留代码或无法使用 C 11 std::current_exception 机制,您可以为已知异常添加单独的 catch 子句,并在末尾捕获任何意外异常:
<code class="cpp">try { // ... } catch (const std::exception& ex) { // ... } catch (const std::string& ex) { // ... } catch (...) { // ... }</code>
通过这样做,您可以识别发生的特定异常并进行适当处理。
以上是以下是一些标题选项,范围从广泛到具体: 广阔: * 如何处理 C 中的异常:捕获所有异常还是仅捕获特定异常? * C 中的异常处理:捕获 E 的最佳实践的详细内容。更多信息请关注PHP中文网其他相关文章!