C 是否有办法忽略函数中的异常?

新手上路,请多包涵

我创建了一个引发异常的函数,但在某些情况下我希望它简单地忽略此异常。

我这样写我的代码,但它不是很优雅:

 try {
    myFunction();
} catch (...) {}

C++ 有另一种写法吗?

原文由 TheArchitect 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 434
1 个回答

不,没有。

在这种情况下,您可以遵循标准的做法,即两次重载函数,一次使用 std::nothrow_t ,一次不使用。使用后者来包装第一个

std::error_code my_function(std::nothrow_t) noexcept;
void my_function(); //throws

原文由 David Haim 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题