Difference between revisions of "cpp/container/vector/pop back"
From cppreference.com
m (Add link to edit the included template) |
m (r2.7.3) (Robot: Adding de:cpp/container/vector/pop back, es:cpp/container/vector/pop back, zh:cpp/container/vector/pop back) |
||
Line 1: | Line 1: | ||
{{page template|cpp/container/pop_back|vector}} | {{page template|cpp/container/pop_back|vector}} | ||
+ | [[de:cpp/container/vector/pop back]] | ||
+ | [[es:cpp/container/vector/pop back]] | ||
[[fr:cpp/container/vector/pop back]] | [[fr:cpp/container/vector/pop back]] | ||
[[it:cpp/container/vector/pop back]] | [[it:cpp/container/vector/pop back]] | ||
Line 6: | Line 8: | ||
[[pt:cpp/container/vector/pop back]] | [[pt:cpp/container/vector/pop back]] | ||
[[ru:cpp/container/vector/pop back]] | [[ru:cpp/container/vector/pop back]] | ||
+ | [[zh:cpp/container/vector/pop back]] |
Revision as of 16:25, 2 November 2012
void pop_back(); |
(constexpr since C++20) | |
Removes the last element of the container.
Calling pop_back
on an empty container results in undefined behavior.
Iterators and references to the last element are invalidated. The end()
iterator is also invalidated.
Contents |
Parameters
(none)
Return value
(none)
Complexity
Constant.
Exceptions
Throws nothing.
Example
Run this code
#include <vector> #include <iostream> namespace stq { template<typename T> void println(auto, const T& xz) { std::cout << '['; bool first{true}; for (auto const& 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); } }
Output:
[1, 2, 3] [1, 2] [1] []
See also
adds an element to the end (public member function) |