I understand that public/protected members are protected by protected inheritance, and they are private by private inheritance. But can I change them to public explicitly (as shown below)? I actually don't quite understand what it means by "public: A::x"....
class A
{
public:
int x;
int y;
protected:
int z;
};
class B : protected A
{
public:
A::x;
};
class C : private B
{
public:
B::y;
B::z;
};