std::basic_string::front(3)

NAME
std::basic_string::front - std::basic_string::front

Synopsis
   CharT& front(); (1) (constexpr since C++20)
   const CharT& front() const; (2) (constexpr since C++20)
   Returns reference to the first character in the string. The behavior is undefined if
   empty() is true.

Parameters
   (none)

Return value
   Reference to the first character, equivalent to operator[](0).

Complexity
   Constant.

Notes
   In libstdc++, front() is not available in C++98 mode.

Example
// Run this code
 #include <iostream>
 #include <string>
 int main()
 {
     std::string s("Exemplary");
     char& f1 = s.front();
     f1 = 'e';
     std::cout << s << '\n'; // "exemplary"
     std::string const c("Exemplary");
     char const& f2 = c.front();
     std::cout << &f2 << '\n'; // "Exemplary"
 }

Output:
 exemplary
 Exemplary
   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 added
                      function front()

See also
   back accesses the last character
   (DR*) (public member function)
   front accesses the first character
         (public member function of std::basic_string_view<CharT,Traits>)