Sobes.tech
Junior — Middle
122

Hogyan történik a konstruktorok hívási sorrendje öröklődés esetén az objektum létrehozásakor?

Válasz az MI-től

sobes.tech MI

При создании объекта в иерархии наследования конструкторы вызываются в порядке от базового класса к производному. Сначала вызывается конструктор самого базового класса, затем по цепочке вниз к производным классам. Это гарантирует, что все части объекта будут корректно инициализированы.

Например, в 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

Это показывает, что сначала вызывается конструктор базового класса, затем производного.