#include class Test{ public: Test(){ i_num = 0; } Test(int i){ i_num = i; } Test(Test &t){ i_num = t.i_num; } ~Test(){} int num() { return i_num; } private: int i_num; } Test ff(0); int ii = 0; int ins( const int& i, const Test &t) { ff = t; return ( ii = i ); } int main(int argc, char **argv){ Test t(5); Test t1(7); printf( "Res1: %d\n", t1.num() ); t1 = t; printf( "Res2: %d\n", t1.num() ); printf( "Res3: %d\n", ff.num() ); ins( 2, Test(1) ); printf( "Res4: %d\n", ff.num() ); return 0; }