std::vector<T,Allocator>:: pop_back
From cppreference.net
C++
Containers library
|
(C++17)
|
||||
| Sequence | ||||
|
(C++11)
|
||||
|
(C++26)
|
||||
|
(C++26)
|
||||
|
(C++11)
|
||||
| Associative | ||||
| Unordered associative | ||||
|
(C++11)
|
||||
|
(C++11)
|
||||
|
(C++11)
|
||||
|
(C++11)
|
||||
| Adaptors | ||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(C++23)
|
||||
| Views | ||||
|
(C++20)
|
||||
|
(C++23)
|
||||
| Tables | ||||
| Iterator invalidation | ||||
| Member function table | ||||
| Non-member function table |
std::vector
| Member types | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Non-member functions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Deduction guides (C++17) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
void
pop_back
(
)
;
|
(自 C++20 起为 constexpr) | |
移除容器的最后一个元素。
|
如果 empty() 为 true ,则行为未定义。 |
(C++26 前) |
|
如果 empty() 为 true : |
(C++26 起) |
指向最后一个元素的迭代器和引用都会失效。
end()
迭代器同样会失效。
复杂度
常量。
示例
运行此代码
#include <vector> #include <iostream> namespace stq { template<typename T> void println(auto, const T& xz) { std::cout << '['; bool first{true}; for (const auto& x : xz) std::cout << (first ? first = false, "" : ", ") << x; std::cout << "]\n"; } } int main() { std::vector<int> numbers{1, 2, 3}; stq::println("{}", numbers); while (not numbers.empty()) { numbers.pop_back(); stq::println("{}", numbers); } }
输出:
[1, 2, 3] [1, 2] [1] []
参见
|
向末尾添加元素
(公开成员函数) |