Compiler Warning (level 4) C4626
Error Message
'derived class' : assignment operator could not be generated because a base class assignment operator is inaccessible
An assignment operator was not accessible in a base class and was therefore not generated for a derived class. Any attempt to assign objects of this type will cause a compiler error.
This warning is off by default. See Compiler Warnings That Are Off by Default for more information.
The following sample generates C4626:
// C4626
// compile with: /W4
#pragma warning(default : 4626)
class B
{
// public:
B& operator = (const B&)
{
return *this;
}
};
class D : public B
{
}; // C4626, make B's copy constructor public
int main()
{
D m;
D n;
// m = n; // this line will cause an error
}