"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment initialiser un tableau `constexpr` C++11 de 0 à N ?

Comment initialiser un tableau `constexpr` C++11 de 0 à N ?

Publié le 2024-12-22
Parcourir:340

How to Initialize a C  11 `constexpr` Array from 0 to N?

Initialisation d'un tableau Constexpr de 0 à N en C 11

En C 11, la création d'un tableau constexpr qui s'étend de 0 à un entier n spécifié nécessite un peu plus effort que dans les versions C ultérieures. Voici comment procéder :

Utilisation d'un constructeur Constexpr et d'une boucle :

#include 

template
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 

Dans ce code :

  • Le modèle de structure Array représente le tableau constexpr.
  • Le constructeur constexpr initialise les éléments du tableau de 0 à N-1, en utilisant une boucle.
  • Dans main(), une instance de Array est créée et ses éléments sont imprimés sur la console. Cela devrait afficher 0, 1, 2, 3, 4.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3