编译器警告(等级 4)C4623

“derived class”: 未能生成默认构造函数,因为基类默认构造函数不可访问

不可访问基类中的构造函数,因此无法为派生类生成构造函数。 在堆栈上创建此类型对象的任何尝试都将导致编译器错误。

默认情况下关闭此警告。 有关更多信息,请参见默认情况下处于关闭状态的编译器警告

示例

下面的示例生成 C4623。

// C4623.cpp
// compile with: /W4
#pragma warning(default : 4623)
class B {
   B();
};

class C {
public:
   C();
};

class D : public B {};   // C4623 make B's constructor public
class E : public C {};   // OK

int main() {
   // D d;  will cause an error
}