Поделиться через


Предупреждение компилятора (уровень 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
}