std::basic_string<CharT,Traits,Allocator>::push_back — cppreference.com
Материал из cppreference.com
<tbody> </tbody> <tbody class="t-dcl-rev "> </tbody><tbody> </tbody>
|
|
(до C++20) | |
|
|
(начиная с C++20) | |
Добавляет заданный символ ch в конец строки.
Параметры
| ch | — | символ для добавления |
Возвращаемое значение
(нет)
Сложность
Амортизированная константая.
Исключения
Если операция приведёт к size() > max_size(), генерирует std::length_error.
Если по какой-либо причине генерируется исключение, эта функция не имеет эффекта (строгая гарантия безопасности исключений).
Пример
#include <iomanip> #include <iostream> #include <string> int main() { std::string str{"Короткая строка"}; std::cout << "1) " << std::quoted(str) << ", размер: " << str.size() << '\n'; str.push_back('!'); std::cout << "2) " << std::quoted(str) << ", размер: " << str.size() << '\n'; }
Вывод:
1) "Короткая строка", размер: 29 2) "Короткая строка!", размер: 30
Отчёты о дефектах
Следующие изменения поведения были применены с обратной силой к ранее опубликованным стандартам C++:
| Номер | Применён | Поведение в стандарте | Корректное поведение |
|---|---|---|---|
| LWG 7 | C++98 | (1) описание отсутствовало в стандарте C++ (2) тип параметра был const CharT
|
(1) описание добавлено (2) изменён на CharT
|
| LWG 847 | C++98 | не было гарантии безопасности исключений | добавлена надёжная гарантия безопасности исключений |