редбачені конструктори класу:
за умовчанням;
одержує параметри;
копіювання;
Конструктори володіють більшістю характеристик звичайних методів - їх слід оголосити і визначити в межах класу, або оголосити в класі, але визначити поза ним. Однак вони володіють деякими унікальними властивостями:
конструктори мають те ж ім'я, що й клас;
не мають оголошень повернення (навіть void);
не можуть бути успадковані, хоча похідний клас може викликати конструктори базового класу;
викликати конструктор тим же чином, що і звичайну функцію - метод класу, не можна. Конструктор викликається неявно, при створенні або копіюванні об'єкта даного класу.
Конструктори глобальних змінних викликаються до виклику функції main (). Локальні об'єкти створюються, як тільки стає активною сфера дії змінної. p align="justify"> Параметри конструктора
За допомогою параметрів конструктору можуть бути передані будь-які дані, необхідні для створення та ініціалізації об'єктів. Параметри конструктора можуть бути будь-якого типу, за винятком класу, елементом якого є даний конструктор (але посилання на власний клас можна використовувати як параметр конструктора). Формат визначення конструктора в тілі класу може бути таким:
імя_класса (список формальних параметрів)
{оператори тіла конструктора};
Конструктор за замовчуванням. Конструктором за замовчуванням для класу Х називається такий конструктор, який не приймає ніяких аргументів: X :: X (). p align="justify"> Примітка: Конструктор за замовчуванням не приймає аргументів взагалі, його не слід плутати з конструктором, які мають аргументи за замовчуванням.
Конструктор копіювання. Конструктор копіювання для класу. Х - це такий конструктор, який може бути викликаний з єдиним аргументом типу Х:
Конструктор копіювання запускається при копіюванні об'єкта даного класу, зазвичай у разі оголошення з ініціалізацією об'єктом іншого класу: Х x = y.
Якщо конструктори в тілі класу не були визначені явно, то компілятор формує за замовчуванням конструктор без параметрів і конструктор копіювання.
Перевантаження конструкторів
У визначенні класу може бути присутнім кілька конструкторів, тобто конструктори можуть бути перевантажені. Перевантажені конструктори дозволяють створювати об'єкти залежно від значень, які використовуються при ініціалізації. програмний автоматизований облік медикамент