#include using namespace std; class ObjectRef { public: int value; ObjectRef(int v) : value(v) {} }; void func1(ObjectRef *parm1) { parm1->value = 111; cout << "In func1: parm1->value = " << parm1->value << endl; } void func2(ObjectRef* &parm2) { parm2 = new ObjectRef(222); cout << "In func2: parm2->value = " << parm2->value << endl; } int main() { ObjectRef *obj = new ObjectRef(0); cout << "In main before call to func1: obj->value = " << obj->value << endl; cout << endl; func1(obj); cout << "In main after call to func1: obj->value = " << obj->value << endl; cout << endl; func2(obj); cout << "In main after call to func2: obj->value = " << obj->value << endl; return 0; }