std::span<T,Extent>::operator[]
From cppreference.com
constexpr reference operator[]( size_type idx ) const; |
(since C++20) | |
Returns a reference to the idxth element of the sequence. The behavior is undefined if idx is out of range (i.e., if it is greater than or equal to size()).
Contents |
[edit] Parameters
idx | - | the index of the element to access |
[edit] Return value
A reference to the idxth element of the sequence, i.e., data()[idx].
[edit] Exceptions
Throws nothing.
[edit] Example
Run this code
#include <cstddef> #include <iostream> #include <span> #include <utility> void reverse(std::span<int> span) { for (std::size_t i = 0, j = std::size(span); i < j; ++i) { --j; std::swap(span[i], span[j]); } } void print(std::span<const int> const span) { for (int element : span) std::cout << element << ' '; std::cout << '\n'; } int main() { int data[]{1, 2, 3, 4, 5}; print(data); reverse(data); print(data); }
Output:
1 2 3 4 5 5 4 3 2 1
[edit] See also
(C++26) |
access specified element with bounds checking (public member function) |
direct access to the underlying contiguous storage (public member function) | |
returns the number of elements (public member function) | |
(C++20) |
converts a span into a view of its underlying bytes (function template) |