(With more power, comes more responsibility. So choose wisely)
class myCLass { private: int x; double y; void print() { cout << x << " " << y << endl; } }; |
class myShadowCLass { public: int x; double y; }; |
myCLass a; a.x = 4; // Disallowed - x is private myShadowClass *p; p = (myShadowClass *) &a; // <--- Cast address to (myShadowClass *) !!! p->x = 4; // Update the private variable x |