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