Tradicionalmente, as matrizes estáticas em c podem ser definidas no tempo de compilação usando fixo- matrizes de tamanho. No entanto, para certos cenários, pode ser desejável atribuir valores programaticamente no momento da compilação. Este artigo explora técnicas de metaprogramação para alcançar essa criação dinâmica de matrizes estáticas. Lista de argumentos de modelos variádicos. Esta solução alternativa possui limitações devido à profundidade máxima do modelo de instanciação. O modelo Metafunc serve como um pacote de parâmetros que gera uma sequência de valores com base em seu índice. Um modelo Gerate_array pode então criar uma matriz do tamanho desejado usando os valores gerados. };
modelo
void test () {
const size_t count = 5;
typedef generate_array Este exemplo define uma matriz estática do tamanho 5, com valores {1, 2, 3, 4, 5} atribuídos no horário de compilação usando o metafunction.
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