4
聲明:googletest EXPECT_NO_THROW內沒有可用的適當的默認構造函數
class ClassOne
{
ClassOne (ClassTwo* classTwo, ClassThree const& classThree);
}
測試:
ClassTwo* classTwo;
ClassThree classThree;
EXPECT_NO_THROW (ClassOne (classTwo, classThree));
這編譯和運行,但現在我將其更改爲:
聲明:
class ClassOne
{
ClassOne (ClassThree const& classThree);
}
測試:
ClassThree classThree;
EXPECT_NO_THROW (ClassOne (classThree));
這會失敗,並且「沒有適當的默認構造函數可用」。
以下行編譯:
ClassOne classOne (classTwo, classThree); // First case
ClassOne classOne (classThree); // Second case
是否有某種原因,我不能EXPECT_NO_THROW
上一個參數的構造函數?
謝謝你 - 這確實有效。我已經發現:「EXPECT_NO_THROW(new ClassOne(classThree));」工作。 – Mary