Copy constructor: The parameter of a constructor can be of any of the data types expect an object of its own class as a value parameter. Therefore declaration of the subsequent class specification directs to an error. Though, a class own object can be approved as a reference parameter. Thus the class specification shown in that example is valid. These types of constructors have reference to an instance of its own class as an argument is called as copy constructor. The compiler imitates all the members of the user defined source object to target object in the assignment statement. When its members are static. The data members, which are allocated with dynamism, should be copied to the destination object clearly. It can be performed either by using the assignment operation, or the copy constructor. Think of the following statements. A copy constructor copies the data members from one object to another. The function also permits the message (copy constructor invoked) to assist the user in keeping track for all of its execution.