std::basic_string<CharT,Traits,Allocator>::back - cppreference.com

From cppreference.com

CharT&back(); (1)(constexpr since C++20)constCharT&back()const; (2)(constexpr since C++20)Returns reference to the last character in the string.

If

empty()

is true, the behavior is undefined.

(until C++26)If

empty()

is true:

If the implementation is

hardened

, a

contract violation

occurs.

If the implementation is not hardened, the behavior is undefined.

(since C++26)Return value

operator[](size()-1)

Complexity

Constant.

Notes

In libstdc++, back() is

not available

in C++98 mode.

Example

Run this code

#include<iostream>#include<string>intmain(){std::strings("Exemplary");char&back1=s.back();back1='s';std::cout<<s<<'\n';// "Exemplars"std::stringconstc("Exemplary");charconst&back2=c.back();std::cout<<back2<<'\n';// 'y'}Output:

Exemplars y Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

DR Applied to Behavior as published Correct behavior

LWG 534

C++98

std::basic_string

did not have the member function back()added See also

(DR*)

accesses the first character
(public member function)

[edit]

accesses the last character
(public member function of std::basic_string_view<CharT,Traits>)

[edit]