2

我正在使用googletest并且在我的许多测试中我都使用该ASSERT_THROW命令。问题是,例如,如果它抛出与我预期不同的异常,我得到的只是:

实际:它抛出不同的类型。

有没有办法让它吐出返回值之类的what()

4

2 回答 2

2

您可能通过指针抛出(使用new关键字)

throw new MyDerivedException();

并期望收到非指针类型的异常:

EXPECT_THROW(blah, MyDerivedException);

你应该按价值扔。

throw MyDerivedException(); // notice lack of 'new'
于 2014-02-08T21:40:09.887 回答
-3

抛出新的 MyDerivedException() ... EXPECT_THROW(blah, MyDerivedException*);

于 2014-03-18T21:33:05.333 回答