Archivo de encabezado de la biblioteca estándar <array>, <(desde C++11)>
De cppreference.com
Esta cabecera es parte de la Biblioteca de contenedores.
Incluye | ||
<initializer_list>(C++11) | ||
Clases | ||
(C++11) | Array estático contiguo. (plantilla de clase) | |
obtiene el tamaño de un array Original: obtains the size of an array The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (especialización de plantilla de clase) | ||
se obtiene el tipo de los elementos de array Original: obtains the type of the elements of array The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (especialización de plantilla de clase) | ||
Funciones | ||
(eliminado en C++20)(eliminado en C++20)(eliminado en C++20)(eliminado en C++20)(eliminado en C++20)(C++20) | Compara lexicográficamente los valores de array. (plantilla de función) | |
(C++11) | Accede a un elemento de un array . (plantilla de función) | |
(C++11) | Especializa el algoritmo std::swap. (plantilla de función) |
[editar]Sinopsis
#include <initializer_list> namespace std { template<class T, size_t N >struct array; template<class T, size_t N>bool operator==(const array<T,N>& x, const array<T,N>& y);template<class T, size_t N>bool operator!=(const array<T,N>& x, const array<T,N>& y);template<class T, size_t N>bool operator<(const array<T,N>& x, const array<T,N>& y);template<class T, size_t N>bool operator>(const array<T,N>& x, const array<T,N>& y);template<class T, size_t N>bool operator<=(const array<T,N>& x, const array<T,N>& y);template<class T, size_t N>bool operator>=(const array<T,N>& x, const array<T,N>& y); template<class T, size_t N >void swap(array<T,N>& x, array<T,N>& y)noexcept(noexcept(x.swap(y))); template<class T>class tuple_size;template<size_t I, class T>class tuple_element;template<class T, size_t N>struct tuple_size<array<T, N>>;template<size_t I, class T, size_t N>struct tuple_element<I, array<T, N>>;template<size_t I, class T, size_t N>constexpr T& get(array<T, N>&)noexcept;template<size_t I, class T, size_t N>constexpr T&& get(array<T, N>&&)noexcept;template<size_t I, class T, size_t N>constexprconst T& get(const array<T, N>&)noexcept;template<size_t I, class T, size_t N>constexprconst T&& get(const array<T, N>&&)noexcept;}
[editar]Clase std::array
template<class T, size_t N >struct array {// tipos:typedef T& reference;typedefconst T& const_reference;typedef/*definido por implementación*/ iterator;typedef/*definido por implementación*/ const_iterator;typedef size_t size_type;typedef ptrdiff_t difference_type;typedef T value_type;typedef T* pointer;typedefconst T* const_pointer;typedef reverse_iterator<iterator> reverse_iterator;typedef reverse_iterator<const_iterator> const_reverse_iterator; T elems[N];// solo exposición// no construcción/copia/destrucción para tipos agregados void fill(const T& u);void swap(array<T, N>&)noexcept(is_nothrow_swappable_v<T>); // iteradores:constexpr iterator begin()noexcept;constexpr const_iterator begin()constnoexcept;constexpr iterator end()noexcept;constexpr const_iterator end()constnoexcept; constexpr reverse_iterator rbegin()noexcept;constexpr const_reverse_iterator rbegin()constnoexcept;constexpr reverse_iterator rend()noexcept;constexpr const_reverse_iterator rend()constnoexcept; constexpr const_iterator cbegin()constnoexcept;constexpr const_iterator cend()constnoexcept;constexpr const_reverse_iterator crbegin()constnoexcept;constexpr const_reverse_iterator crend()constnoexcept; // capacidad:constexpr size_type size()constnoexcept;constexpr size_type max_size()constnoexcept;constexprbool empty()constnoexcept; // acceso a elementos:constexpr reference operator[](size_type n);constexpr const_reference operator[](size_type n)const;constexpr const_reference at(size_type n)const;constexpr reference at(size_type n);constexpr reference front();constexpr const_reference front()const;constexpr reference back();constexpr const_reference back()const; constexpr T * data()noexcept;constexprconst T * data()constnoexcept;}; template<class T, class... U> array(T, U...)-> array<T, 1+ sizeof...(U)>;
[editar]Nota
La variable array::elems
está solo para exposición, no es parte de la interfaz.