Can you have protected nested classes in C++?

I have a class that only really ever needed by classes in a certain class hierarchy. I wanted to know if it is possible to nest the class in the highest class's protected section and have all the other classes automatically inherit it?

Answers


"Inherit" is the wrong word to use since it has a very specific definition in C++ which you don't mean, but yes you can do that. This is legal:

 class A {
   protected:
   class Nested { };
 };

 class B : public A {
   private:
   Nested n;
 };

And code that is not in A or something that derives from A cannot access or instantiate A::Nested.


Need Your Help

XPath - Select first group of siblings between two nodes

c# xml xpath siblings

I ran into a little problem when using XPath to query some HTML files in C#.