Предположим, у меня есть:
class A {
public:
A(int x_) : x(x_) {}
int x;
};
class B: public A { };
class C: public A { };
С этим кодом у B и C не будет никаких конструкторов (кроме конструктора копирования). Я хотел бы что-то изменить в классе A
(не в B
или же C
) так что оба B
а также C
унаследует конструктор A
, Это возможно как-то?
Невозможно иметь их неявно. Вы можете явно иметь конструкторы, доступные через:
class B: public A { using A::A; };
class C: public A { using A::A; };
Других решений пока нет …