![]() |
VOOZH | about |
In object-oriented programming, a copy constructor is a special member function that initializes a new object as a copy of an existing object. In this article, we will learn how to implement a copy constructor in a derived class.
In C++, when we implement a constructor in an inherited class, we need to explicitly call the corresponding constructor of the base class also so that we can avoid implement same constructor logic again and again. Some thing happens with copy constructor.
To implement a copy constructor in a derived class in C++, we have to call the copy constructor of the base class too in the definition as shown in the below syntax
Derived(const Derived& other_Object) : Base(other_Object) {
// Derived class copy constructor body
}The following program illustrates how we can implement a copy constructor in a derived class.
Output
Base constructor called with data: 10 Derived constructor called with data: 20 Base copy constructor called Derived copy constructor called Object 1: Base data: 10 Derived data: 20 Object 2: Base data: 10 Derived data: 20
Time Complexity: O(1)
Auxiliary Space: O(1)