尝试创建 ASSERT_EXIT 对象时出现段错误,该对象会在错误参数上引发自定义异常,如下所示:
ASSERT_EXIT( MyObj(1,2,3) , ::testing::ExitedWithCode(1), "");
正在创建的类是这样的:
class MyObj
{
public:
MyObj(int a, int b, int c) { if( a < b ) throw MyException("Error"); }
}
自定义异常是这样的:
class MyException : public std::invalid_argument
{
public:
MyException(std::string s) { /* do some logging */ exit(1); }
};
是否有解决方法或更好的方法?
谢谢