Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Bypassing encapsulation with typecast to struct
#include <iostream>
using namespace std;
class Contact
{
private:
int mobile_number; // private variable
int home_number; // private variable
public:
Contact() // constructor
{
mobile_number = 12345678;
home_number = 87654321;
}
void print_numbers()
{
cout << "Mobile number: " << mobile_number;
cout << ", home number: " << home_number << endl;
}
};
struct Contact_struct
{
int mobile_number;
int home_number;
};
int main()
{
Contact Tony;
Contact_struct * structured_Tony;
Tony.print_numbers();
structured_Tony = (Contact_struct *) & Tony;
structured_Tony->mobile_number = 20;
structured_Tony->home_number = 30;
Tony.print_numbers();
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.