std::basic_string<CharT,Traits,Allocator>:: front
| Classes | ||||
|
(C++17)
|
||||
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
CharT
&
front
(
)
;
|
(1) | (constexpr начиная с C++20) |
|
const
CharT
&
front
(
)
const
;
|
(2) | (constexpr начиная с C++20) |
Возвращает ссылку на первый символ в строке.
|
Если empty() возвращает true , поведение не определено. |
(до C++26) |
|
Если empty() возвращает true :
|
(начиная с C++26) |
Содержание |
Возвращаемое значение
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>
)
|