(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 |