En C 11, crear una matriz constexpr que abarca de 0 a un entero n especificado requiere un poco más esfuerzo que en versiones C posteriores. Así es como se puede hacer:
Usando un constructor Constexpr y un bucle:
#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 En este código:
- La plantilla de estructura Array representa la matriz constexpr.
- El constructor constexpr inicializa los elementos de la matriz de 0 a N-1, usando un bucle.
- En main(), se crea una instancia de Array y sus elementos se imprimen en la consola. Esto debería generar 0, 1, 2, 3, 4.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3