When Copy Constructor is called Copy Constructor is called in the following scenarios: When we initialize the object with another existing object of the same class type. For example, Student s1 = s2, where Student is the class . When the object of the same class type is passed by value as an argument.