Namespaces
Variants
Actions

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

From cppreference.com
< cpp‎ | container‎ | span
 
 
 
 
constexpr reference back()const;
(since C++20)

Returns a reference to the last element in the span.

If empty() is true, the behavior is undefined.

(until C++26)

If empty() is true:

  • If the implementation is hardened, a contract violation occurs. Moreover, if the contract-violation handler returns under “observe” evaluation semantic, the behavior is undefined.
  • If the implementation is not hardened, the behavior is undefined.
(since C++26)

Contents

[edit]Return value

A reference to the back element.

[edit]Complexity

Constant.

[edit]Notes

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

[edit]Example

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

Output:

0 1 2 3 4 4 3 2 1 0

[edit]See also

access the first element
(public member function)[edit]
close