class base { protected: int x; }; class der: public base { void Acc(base& b) { b.x = 5; // error b.*(&der::x) = 5; // ok } }; int main () {}
Standard input is empty
prog.cpp: In member function ‘void der::Acc(base&)’: prog.cpp:4:8: error: ‘int base::x’ is protected int x; ^ prog.cpp:11:9: error: within this context b.x = 5; // error ^
Standard output is empty