Protected Inheritance Bug

Protected Inheritance Bug

What is the standard rule on access specifiers associated with superclasses?

Old C++ compilers would not allow protected superclasses. But, the book I’ve read about OOAD allows it.


  class a {};  class b: protected a {}; // invalid on                           // old c++                             // compilers!

You’ve bumped into a compiler bug. A class can be inherited as public, protected or private base. My advice is to get of rid of this compiler or at least upgrade it. If it can’t support such a fundamental feature, I’m pretty sure it’s replete with other bugs and incompatibilities.

See also - an AI reverse image search platform

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist