Список против прямой агрегатной инициализации неявно инициализированных полейC++

Программы на C++. Форум разработчиков
Anonymous
Список против прямой агрегатной инициализации неявно инициализированных полей

Сообщение Anonymous »

Если мы противопоставим инициализацию агрегата списком и прямую инициализацию агрегата, и я не укажу инициализаторы для всех полей, то, я полагаю, применимо следующее:

Для агрегата без объединения каждый элемент, который не является явно инициализированным элементом, инициализируется следующим образом:
  • Если у элемента есть элемент по умолчанию инициализатор, элемент инициализируется из этого инициализатора.
    (начиная с C++11)
  • В противном случае, если элемент не является ссылкой, элемент инициализируется копированием из пустой список инициализаторов.
  • Иначе программа имеет неверный формат.
иначе, если тип назначения (возможно, с указанием cv)
агрегатный класс, он инициализируется, как описано в агрегатной
инициализации, за исключением того, что сужающие преобразования разрешены,
назначенные инициализаторы не допускаются, временная привязка к
/>время жизни ссылки не продлевается, фигурные скобки не используются
, а любые элементы без инициализатора
инициализируются по значению.

Мой вопрос: в чем разница между инициализацией копирования из пустого списка инициализаторов и инициализацией значения? Может быть, стоит сменить язык?

Подробнее здесь: https://stackoverflow.com/questions/784 ... zed-fields

Вернуться в «C++»