Standard library header <initializer_list> (C++11)

This header is part of the utility library.


creates a temporary array in list-initialization and then references it
(class template)


overloads std::begin
(function template)
specializes std::end
(function template)


// all freestanding
namespace std {
  template<class E> class initializer_list {
    using value_type      = E;
    using reference       = const E&;
    using const_reference = const E&;
    using size_type       = size_t;
    using iterator        = const E*;
    using const_iterator  = const E*;
    constexpr initializer_list() noexcept;
    constexpr size_t size() const noexcept;     // number of elements
    constexpr const E* begin() const noexcept;  // first element
    constexpr const E* end() const noexcept;    // one past the last element
  // initializer list range access
  template<class E> constexpr const E* begin(initializer_list<E> il) noexcept;
  template<class E> constexpr const E* end(initializer_list<E> il) noexcept;

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.