initializer_list (Clase)
Proporciona acceso a una matriz de elementos en la que cada miembro es del tipo especificado.
Sintaxis
template <class Type>
class initializer_list
Parámetros
Tipo
Tipo de datos de elementos que se va a almacenar en la initializer_list
.
Comentarios
Se puede construir initializer_list
con una lista de inicializadores entre llaves:
initializer_list<int> i1{ 1, 2, 3, 4 };
El compilador transforma las listas de inicializadores entre llaves con elementos homogéneos en una initializer_list
siempre y cuando la signatura de la función requiera una initializer_list
. Para obtener más información sobre el uso de initializer_list
, consulte Inicialización uniforme y constructores de delegación
Constructores
Constructor | Descripción |
---|---|
initializer_list | Construye un objeto de tipo initializer_list . |
Typedefs
Nombre de tipo | Descripción |
---|---|
value_type |
Tipo de los elementos de initializer_list . |
reference |
Tipo que proporciona una referencia a un elemento de initializer_list . |
const_reference |
Tipo que proporciona una referencia constante a un elemento de initializer_list . |
size_type |
Tipo que representa el número de elementos de initializer_list . |
iterator |
Tipo que proporciona un iterador para initializer_list . |
const_iterator |
Tipo que proporciona un iterador constante para initializer_list . |
Funciones miembro
Función de miembro | Descripción |
---|---|
begin | Devuelve un puntero al primer elemento de initializer_list . |
end | Devuelve un puntero a un elemento más allá del último elemento de initializer_list . |
size | Devuelve el número de elementos de initializer_list . |
Requisitos
Encabezado:<initializer_list>
Espacio de nombres: std
initializer_list::begin
Devuelve un puntero al primer elemento de initializer_list
.
constexpr const InputIterator* begin() const noexcept;
Valor devuelto
Puntero al primer elemento de initializer_list
. Si la lista está vacía, el puntero es el mismo para el principio y el final de la lista.
initializer_list::end
Devuelve un puntero a un elemento más allá del último elemento de initializer list
.
constexpr const InputIterator* end() const noexcept;
Valor devuelto
Puntero a un elemento más allá del último elemento de la lista. Si la lista está vacía, es igual que el puntero al primer elemento de la lista.
initializer_list::initializer_list
Construye un objeto de tipo initializer_list
.
constexpr initializer_list() noexcept;
initializer_list(const InputIterator First, const InputIterator Last);
Parámetros
First
Posición del primer elemento en el intervalo de elementos que se va a copiar.
Último
Posición del primer elemento más allá del intervalo de elementos que se va a copiar.
Comentarios
Una initializer_list
se basa en una matriz de objetos del tipo especificado. Al copiar una initializer_list
se crea una segunda instancia de una lista que apunta a los mismos objetos; los objetos subyacentes no se copian.
Ejemplo
// 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
Devuelve el número de elementos de la lista.
constexpr size_t size() const noexcept;
Valor devuelto
Número de elementos de la lista.