É possível criar um std::array usando listas de inicialização de diversas maneiras. No entanto, o GCC 4.6.1 pode encontrar erros ao tentar fazer isso.
A sintaxe para criar um std::array usando listas de inicialização é:
std::array array = { { value1, value2, ..., valueN } };
onde T é o o tipo de elemento do array, tamanho é o tamanho do array e valor1 a valorN são os valores iniciais do array.
std::array é uma estrutura agregada, que permite que ele seja agregado- inicializado. Para inicializar agregadamente a matriz dentro da estrutura, use um conjunto adicional de chaves:
std::array<:string> strings = {{ "a", "b" }};
Essa sintaxe evita o construtor que usa uma lista de inicializadores, o que pode causar problemas no GCC 4.6.1.
O padrão C 11 sugere que as chaves extras podem ser eliminadas na inicialização agregada. Portanto, a incapacidade do GCC 4.6.1 de compilar listas de inicialização para std::array sem os colchetes extras é provavelmente um bug do compilador.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3