std::basic_string<CharT,Traits,Allocator>::push_back
void push_back( CharT ch ); | (constexpr начиная с C++20) |
Добавляет символ ch в конец строки.
Параметры
| ch | - | символ для добавления |
Возвращаемое значение
(нет)
Сложность
Амортизированная константная.
Исключения
Если в результате операции size() превысит max_size(), выбрасывается std::length_error.
Если по какой-либо причине выбрасывается исключение, эта функция не оказывает никакого эффекта (строгая гарантия безопасности исключений).
Пример
#include <iomanip>
#include <iostream>
#include <string>
int main()
{
std::string str{"Short string"};
std::cout << "1) " << std::quoted(str) << ", size: " << str.size() << '\n';
str.push_back('!');
std::cout << "2) " << std::quoted(str) << ", size: " << str.size() << '\n';
}
Вывод:
1) "Short string", size: 12 2) "Short string!", size: 13
Отчёты об ошибках
Следующие отчёты об ошибках, изменяющие поведение, были применены ретроспективно к ранее опубликованным стандартам C++.
| Отчёт об ошибке | Применён к | Опубликованное поведение | Корректное поведение |
|---|---|---|---|
| LWG 7 | C++98 | 1) в стандарте C++ отсутствовало описание 2) типом параметра был constCharT | 1) описание добавлено 2) изменён на CharT |
| LWG 847 | C++98 | отсутствовала гарантия безопасности исключений | добавлена строгая гарантия безопасности исключений |
См. также
|
(DR*) | удаляет последний символ (открытая функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/string/basic_string/push_back