У меня вопрос по поводу списков инициализации, когда я не инициализирую все элементы.
Допустим, у меня есть следующий код:
class Example {
int a, b, c;
Example() : a(1), b(2), c(3) {}
}
Мне известно, что порядок инициализации членов определяется порядком их объявления, а не порядком, в котором они перечислены в списке инициализации, но что, если у меня нет b в списке инициализации как в следующем?
class Example {
int a, b, c;
Example() : a(1), c(2) {}
}
Будет ли a инициализироваться с 1 , b с неопределенным значением и c с 3 ? Получу ли я неопределенное поведение, потому что я не вызываю список инициализации строго в порядке, который я объявляю? Или ничего из этого?
Я спрашиваю об этом, потому что у меня есть класс с большим количеством данных, и я хочу убедиться, что некоторые из них имеют начальное значение, но мне не нужно инициализировать все это.