是否所有提升异常都来自std :: exception?如果不是,它们都来自某个基类异常类?
答案 0 :(得分:11)
答案 1 :(得分:7)
“好的Boost citizen”库应该使用boost::throw_exception
,以支持禁用异常处理的配置。
boost::throw_exception
函数要求传递的异常的类型从std::exception
公开派生(从1.37.0版本开始,或者boost::throw_exception
将发出编译错误,如果该要求不是此外,默认情况下,使用boost::throw_exception
发出的异常来自boost::exception
。
但是,Boost库不需要通过boost:throw_exception
抛出异常或从std::exception
派生。
答案 2 :(得分:1)
我相信。想不到一个boost库抛出一些非std :: exception的东西。