22 Containers library [containers]

22.3 Sequence containers [sequences]

22.3.7 Class template array [array]

22.3.7.3 Member functions [array.members]

constexpr size_type size() const noexcept;
Returns: N.
constexpr T* data() noexcept; constexpr const T* data() const noexcept;
Returns: A pointer such that [data(), data() + size()) is a valid range.
For a non-empty array, data() == addressof(front()).
constexpr void fill(const T& u);
Effects: As if by fill_­n(begin(), N, u).
constexpr void swap(array& y) noexcept(is_nothrow_swappable_v<T>);
Effects: Equivalent to swap_­ranges(begin(), end(), y.begin()).
Note
:
Unlike the swap function for other containers, array​::​swap takes linear time, may exit via an exception, and does not cause iterators to become associated with the other container.
— end note
 ]