編譯器警告 (層級 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 - to fix, make B's constructor public
class E : public C {}; // OK - class C constructor is public
int main() {
// D d; // Error C2280
}