std::basic_string<CharT,Traits,Allocator>:: pop_back
| Classes | ||||
|
(C++17)
|
||||
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
void
pop_back
(
)
;
|
(constexpr desde C++20) | |
Elimina el último carácter de la cadena.
Equivalente a erase ( end ( ) - 1 ) .
|
Si empty() es true , el comportamiento es indefinido. |
(hasta C++26) |
|
Si empty() es true :
|
(desde C++26) |
Contenidos |
Complejidad
Constante.
Excepciones
No lanza nada.
Notas
En libstdc++,
pop_back()
está
no disponible
en modo C++98.
Ejemplo
#include <cassert> #include <iomanip> #include <iostream> #include <string> int main() { std::string str("Short string!"); std::cout << "Before: " << std::quoted(str) << '\n'; assert(str.size() == 13); str.pop_back(); std::cout << "After: " << std::quoted(str) << '\n'; assert(str.size() == 12); str.clear(); // str.pop_back(); // undefined behavior }
Salida:
Before: "Short string!" After: "Short string"
Informes de defectos
Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares publicados anteriormente de C++.
| DR | Se aplica a | Comportamiento publicado | Comportamiento correcto |
|---|---|---|---|
| LWG 534 | C++98 |
std::basic_string
no tenía la función miembro
pop_back()
|
añadida |
Véase también
|
añade un carácter al final
(función miembro pública) |
|
|
elimina caracteres
(función miembro pública) |