Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/container/vector/pop back"

From cppreference.com
< cpp‎ | container‎ | vector
m (Shorten template names. Use {{lc}} where appropriate.)
Line 1: Line 1:
{{page template|cpp/container/pop_back|vector}}
+
{{include page|cpp/container/pop_back|vector}}
  
 
[[de:cpp/container/vector/pop back]]
 
[[de:cpp/container/vector/pop back]]

Revision as of 19:40, 31 May 2013

 
 
 
 
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

#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) [edit]