7. Copy Constructor

z6.6.2-copy.cc
class MyClass { public: MyClass(); ~MyClass(); private: int* dataObj; ... };

// Copy constructor
MyClass::MyClass(const MyClass& origClass) {
   dataObj = new int; // Allocate sub-object
   *dataObj = *(origClass.dataObj);
}
Constructor called.
Before: 9
Copy constructor called.
Destructor called.
After: 9
Destructor called.