kzhereb / knu-is-ooop2019

Materials for "Fundamentals of OOP" course
MIT License
3 stars 0 forks source link

T10.15. Чи може клас мати кілька конструкторів? #15

Open WAG13 opened 4 years ago

WAG13 commented 4 years ago

так

i1red commented 4 years ago

Так

solovdaria commented 4 years ago

Так, клас може мати безліч конструкторів, доки вони матимуть унікальні параметри.

yanaskyrda commented 4 years ago

Якщо ми визначаємо конструктор класу, який приймає параметри і хочемо залишити дефолтний конструктор, то потрібно про це прямо сказати компілятору: class A { std::string data; public: A() = default; A (const std::string& newData) : data(newData) {} };

Velly69 commented 4 years ago

Так, а саме:

AntonHladkiy commented 4 years ago

так , наприклад за замовчуванням та з параметрами

RostyslavMV commented 4 years ago

Може і часто має, часто прийнято створювати конструктори без параметрів, навіть якщо вони не викликаються. Крім конструктора без параметрів можна створити конструктори з різними наборами параметрів для заповнення конкретних полів в об'єкті, залежно від поставлених умов.

ilyakorenevskyi commented 4 years ago

Так це фактично є превантаження методу. Можна наприклад зробити конструктор за замовчуванням, що не приймає аргументів, або з аргументами