Есть ли в C++ пустые скобки с нулевой инициализацией в C-структуре?
Если с C++17 я сделаю
struct tm mytm{};
int i{};
Будет ли переменная mytm
(и на всякий случай также i
) быть инициализированным нулем?
Меня посылают по кругу через эти страницы:
- значение инициализировано,
- с нулевой инициализацией,
- инициализированный по умолчанию и / или
- агрегат-инициализированный.
И самое близкое, что я могу найти, - это инициализация нуля:
..., включая инициализацию значений элементов агрегатов, для которых не предусмотрены инициализаторы
Альтернативой (я как-то правильно считаю) была бы инициализация по умолчанию, что означало бы отсутствие инициализации. Но я также считаю, что это инициализация значения, то есть нули. Смущенный...
(Замечу, что при инициализации структуры C инициализатор не может быть пустым. Поэтому аргумент "как в C" здесь не выполняется.)