initializer_list, classe
Fournit l'accès à un tableau d'éléments dans lequel chaque membre est du type spécifié.
Syntaxe
template <class Type>
class initializer_list
Paramètres
Type
Type de données d'élément à stocker dans le initializer_list
.
Notes
Un initializer_list
peut être construit à l'aide d'une liste d'initialiseurs entre accolades :
initializer_list<int> i1{ 1, 2, 3, 4 };
Le compilateur transforme les listes d'initialiseurs entre accolades avec des éléments homogènes en un initializer_list
chaque fois que la signature de fonction nécessite un initializer_list
. Pour plus d’informations sur l’utilisation initializer_list
, consultez Initialisation uniforme et délégation de constructeurs
Constructeurs
Constructeur | Description |
---|---|
initializer_list | Construit un objet de type initializer_list . |
Typedefs
Nom de type | Description |
---|---|
value_type |
Type des éléments dans le initializer_list . |
reference |
Type qui fournit une référence à un élément stocké dans le initializer_list . |
const_reference |
Type qui fournit une référence constante à un élément dans le initializer_list . |
size_type |
Type qui représente le nombre d'éléments dans le initializer_list . |
iterator |
Type qui fournit un itérateur pour le initializer_list . |
const_iterator |
Type qui fournit un itérateur constant pour le initializer_list . |
Fonctions Membre
Fonction membre | Description |
---|---|
begin | Retourne un pointeur vers le premier élément d'une initializer_list . |
end | Retourne un pointeur vers la position au-delà du dernier élément dans un initializer_list . |
size | Retourne le nombre d'éléments d'un initializer_list . |
Spécifications
Header :<initializer_list>
Espace de noms : std
initializer_list ::begin
Retourne un pointeur vers le premier élément d'une initializer_list
.
constexpr const InputIterator* begin() const noexcept;
Valeur retournée
Pointeur vers le premier élément de la initializer_list
. Si la liste est vide, le pointeur est le même pour le début et pour la fin de la liste.
initializer_list ::end
Retourne un pointeur vers la position au-delà du dernier élément dans un initializer list
.
constexpr const InputIterator* end() const noexcept;
Valeur retournée
Pointeur vers la position au-delà du dernier élément de la liste. Si la liste est vide, elle est identique au pointeur vers le premier élément de la liste.
initializer_list ::initializer_list
Construit un objet de type initializer_list
.
constexpr initializer_list() noexcept;
initializer_list(const InputIterator First, const InputIterator Last);
Paramètres
First
Position du premier élément de la plage d'éléments à copier.
Dernière
Position du premier élément au-delà de la plage d'éléments à copier.
Notes
Une initializer_list
est basée sur un tableau d'objets du type spécifié. La copie d’une initializer_list
deuxième instance d’une liste pointant vers les mêmes objets ; les objets sous-jacents ne sont pas copiés.
Exemple
// initializer_list_class.cpp
// compile with: /EHsc
#include <initializer_list>
#include <iostream>
int main()
{
using namespace std;
// Create an empty initializer_list c0
initializer_list <int> c0;
// Create an initializer_list c1 with 1 element
initializer_list <int> c1{ 3 };
// Create an initializer_list c2 with 5 elements
initializer_list <int> c2{ 5, 4, 3, 2, 1 };
// Create a copy, initializer_list c3, of initializer_list c2
initializer_list <int> c3(c2);
// Create a initializer_list c4 by copying the range c3[ first, last)
const int* c3_ptr = c3.begin();
c3_ptr++;
c3_ptr++;
initializer_list <int> c4(c3.begin(), c3_ptr);
// Move initializer_list c4 to initializer_list c5
initializer_list <int> c5(move(c4));
cout << "c1 =";
for (auto c : c1)
cout << " " << c;
cout << endl;
cout << "c2 =";
for (auto c : c2)
cout << " " << c;
cout << endl;
cout << "c3 =";
for (auto c : c3)
cout << " " << c;
cout << endl;
cout << "c5 =";
for (auto c : c5)
cout << " " << c;
cout << endl;
}
c1 = 3
c2 = 5 4 3 2 1
c3 = 5 4 3 2 1
c5 = 5 4
initializer_list ::size
Retourne le nombre d'éléments figurant dans la liste.
constexpr size_t size() const noexcept;
Valeur retournée
Nombre d'éléments dans la liste.