#include class myClass { public: int x; // Public variables void f1(int a) { x = a; // Access public member variable } }; class yourClass { public: void f1(myClass & p, int a) { p.x = a; // Access public member variable } }; int main(int argc, char ** argv) { myClass jam; yourClass butter; jam.x = 1234; cout << "main can update public variable x: " << jam.x << endl; butter.f1(jam, 4444); cout << "f1() in yourClass can update public variable x: " << jam.x << endl; jam.f1(7777); cout << "f1() in myClass can update public variable x: " << jam.x << endl; }