std::span<T,Extent>::back

From cppreference.com
< cpp‎ | container‎ | span
 
 
 
std::span
Member functions
(C++20)
Element access
span::back
(C++20)
(C++20)
Iterators
(C++20)(C++23)
(C++20)(C++23)
Observers
(C++20)
Subviews
(C++20)
Non-member functions
Non-member constant
Deduction guides(C++20)
 
constexpr reference back() const;
(since C++20)

Returns a reference to the last element in the span.

Calling back on an empty span results in undefined behavior.

Parameters

(none)

Return value

A reference to the back element.

Complexity

Constant

Notes

For a span c, the expression c.back() is equivalent to *(c.end() - 1).

Example

#include <iostream>
#include <span>
 
void print_forward(std::span<const int> const span)
{
    for (auto n { span.size() }; n != 0; --n )
        std::cout << span.last(n).front() << ' ';
    std::cout << '\n';
}
 
void print_backward(std::span<const int> const span)
{
    for (auto n { span.size() }; n != 0; --n)
        std::cout << span.first(n).back() << ' ';
    std::cout << '\n';
}
 
int main()
{
    constexpr int numbers[] { 0, 1, 2, 3, 4 };
    print_forward(numbers);
    print_backward(numbers);
}

Output:

0 1 2 3 4
4 3 2 1 0

See also

(C++20)
access the first element
(public member function)