This documentation is archived and is not being maintained.

Compiler Error C3628

'base class' : managed classes only support public inheritance

An attempt was made to use a managed class as a private or protected base class. A managed class can only be used as a base class with public access.

The following sample generates C3628:

// C3628.cpp
// compile with: /clr
#using <mscorlib.dll>
__gc class B {

__gc class D : B {   // C3628, private is the default access level

// The following line resolves the error.
// __gc class D : public B {

int main() {