Вызов определенного конструктора родительского класса в наследнике
Если же нужно вызывать другой конструктор то это делается вот такой записью B():A(параметр)
class A
{
public:
int x;
A() // конструктор по умолчанию
{
cout << x;
}
A(int x) // перегрузка конструктора
{
this->x = x;
cout << x;
}
};
class B : public A
{
public:
B():A(5) // вызываем конструктор и задаем значение 5
{
}
};
Если нужно задать параметр в конструктор за пределами класса, то используем подобную запись:
B(int x):A(x)
{
}int main()
{
B b(777);
}Если в родительском классе нет конструктора по умолчанию то эта запись обязательна.
Last updated