宣言:
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
使用一个参数的构造函数吗?