Брекеты (без конструктора) инициализация производного класса
struct base {
};
//struct derived { // <--- this one works
struct derived : public base { // <--- but this one doesn't
double x;
};
main () {
derived d{0.5};
return 0;
}
Какой способ инициализации derived
используя фигурные скобки, то есть без явного написания конструктора?
1 ответ
Решение
Только агрегаты могут быть инициализированы таким образом (без определения вашего собственного конструктора), и одно из требований быть агрегатом - не иметь никаких базовых классов. Короче говоря, вы не можете этого сделать.