Можем ли мы опустить двойные скобки для std :: array в C ++ 14?
Я сейчас читаю черновик стандарта для C ++ 14, и, возможно, мой legalese немного заржавел, но я не могу найти упоминаний о разрешении инициализации, как в следующем
std::array<int, 3> arr{1,2,3};
быть законным (РЕДАКТИРОВАТЬ: Очевидно, вышеупомянутый является допустимым синтаксисом в C ++ 11.) В настоящее время в C ++ 11 мы должны инициализировать std :: array как
std::array<int, 3> arr{{1,2,3}}; // uniform initialization + aggregate initialization
или же
std::array<int, 3> arr = {1,2,3};
Мне показалось, что я где-то слышал, что они ослабляют правила в C ++ 14, так что нам не нужно использовать метод двойной скобки при использовании равномерной инициализации, но я не могу найти фактическое доказательство.
ПРИМЕЧАНИЕ. Причина, по которой я забочусь об этом, заключается в том, что я сейчас разрабатываю тип multi_array и не хочу его инициализировать следующим образом
multi_array<int, 2, 2> matrix = {
{{ 1, 2 }}, {{ 3, 4 }}
};