Em C 11, criar um array constexpr que abrange de 0 a um inteiro especificado n requer um pouco mais esforço do que em versões C posteriores. Veja como isso pode ser feito:
Usando um construtor Constexpr e um loop:
#includetemplate struct Array { constexpr Array() : arr() { for (auto i = 0; i != N; i) arr[i] = i; } int arr[N]; }; int main() { constexpr auto a = Array(); for (auto x : a.arr) std::cout Neste código:
- O modelo de estrutura Array representa o array constexpr.
- O construtor constexpr inicializa os elementos do array de 0 a N-1, usando um loop.
- Em main(), uma instância de Array é criada e seus elementos são impressos no console. Isso deve gerar 0, 1, 2, 3, 4.
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