Podemos omitir as chaves duplas para std :: array em C ++ 14?
Eu estou lendo o rascunho do padrão para C ++ 14 agora, e talvez meu advogado esteja um pouco enferrujado, mas não consigo encontrar nenhuma menção de permitir inicializações como as seguintes
std::array<int, 3> arr{1,2,3};
sendo legal. (EDIT: Aparentemente, o acima é sintaxe legal em C + + 11.) Atualmente em C + + 11, temos de inicializar std :: array como
std::array<int, 3> arr{{1,2,3}}; // uniform initialization + aggregate initialization
ou
std::array<int, 3> arr = {1,2,3};
Eu pensei ter ouvido em algum lugar que eles estavam relaxando as regras em C ++ 14, de modo que não precisávamos usar o método de chave dupla ao usar uma inicialização uniforme, mas não consigo encontrar a prova real.
NOTA: O motivo pelo qual eu me importo com isso é porque eu estou atualmente desenvolvendo um tipo multi_array e não quero ter que inicializá-lo como
multi_array<int, 2, 2> matrix = {
{{ 1, 2 }}, {{ 3, 4 }}
};