Конструктор копіювання використовується тільки у разі ініціалізації і не використовується замість явного надання (тобто там, де використовується оператор присвоєння). Неявний конструктор копіювання класу викликає конструктори копіювання базових класів та створює побітові копії членів класу.
Коли викликається конструктор?
Конструктор – це спеціальний метод, який викликається під час створення нового об'єкта. Не завжди зручно ініціалізувати всі змінні класи під час створення його екземпляра. Іноді простіше, щоб якісь значення були створені за умовчанням під час створення об'єкта.
Навіщо потрібні конструктори копіювання?
Конструктор копіювання – це спеціальний конструктор, який дозволяє отримати ідентичний до заданого об'єкт. Тобто за допомогою конструктора копіювання можна отримати копію вже існуючого об'єкта. Конструктор копіювання ще називається ініціалізатором копії (copy initializer).