Share via


Upozornění kompilátoru (úroveň 4) C4623

'derived class' : výchozí konstruktor byl implicitně definován jako odstraněný.

Vzhledem k tomu, že výchozí konstruktor je odstraněn nebo nepřístupný v základní třídě, kompilátor nemůže vygenerovat výchozí konstruktor pro odvozenou třídu. Při pokusu o vytvoření objektu tohoto typu pomocí výchozího konstruktoru (například v poli) dojde k chybě kompilátoru.

Toto upozornění je ve výchozím nastavení vypnuté. Další informace najdete v tématu Upozornění kompilátoru, která jsou ve výchozím nastavení vypnutá.

Příklad

Následující ukázka vygeneruje 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
}