std::basic_string<CharT,Traits,Allocator>::front
| (1) | ||
CharT& front(); | (до C++20) | |
constexpr CharT& front(); | (с C++20) | |
| (2) | ||
const CharT& front() const; | (до C++20) | |
constexpr const CharT& front() const; | (с C++20) |
Возвращает ссылку на первый символ в строке. Поведение не определено, если empty() равно true.
Параметры
(нет)
Значение возврата
Ссылка на первый символ, эквивалентная operator[](0).
Сложность
Постоянная.
Примечания
В libstdc++, front() недоступно в режиме C++98.
Пример
#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"
}Вывод:
exemplary Exemplary
Отчеты об ошибках
Следующие отчеты об ошибках, изменяющие поведение, были применены ретроактивно к ранее опубликованным стандартам C++.
| DR | Применено к | Поведение, как опубликовано | Правильное поведение |
|---|---|---|---|
| LWG 534 | C++98 |
std::basic_string не имела члена front() | добавлено |
См. также
|
(DR*) | доступ к последнему символу (публичный член-функция) |
| доступ к первому символу (публичный член-функция std::basic_string_view<CharT,Traits>) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/string/basic_string/front