Back to questions
Junior — Middle
88
Как осуществляется последовательность вызова конструкторов при создании объекта в наследовании?
Answer from AI
sobes.tech AI
При создании объекта в иерархии наследования конструкторы вызываются в порядке от базового класса к производному. Сначала вызывается конструктор самого базового класса, затем по цепочке вниз к производным классам. Это гарантирует, что все части объекта будут корректно инициализированы.
Например, в C++:
class Base {
public:
Base() { std::cout << "Base constructor\n"; }
};
class Derived : public Base {
public:
Derived() { std::cout << "Derived constructor\n"; }
};
int main() {
Derived obj;
return 0;
}
Вывод будет:
Base constructor
Derived constructor
Это показывает, что сначала вызывается конструктор базового класса, затем производного.