Namespaces
Variants
Actions

std::list<T,Allocator>::pop_back

From cppreference.com
< cpp‎ | container‎ | list
 
 
 
std::list
(until C++20)(until C++20)(until C++20)(until C++20)(until C++20)
 
void pop_back();
(constexpr since C++26)

Removes the last element of the container.

If empty() is true, the behavior is undefined.

(until C++26)

If empty() is true:

  • If the implementation is hardened, a contract violation occurs. Moreover, if the contract-violation handler returns under "observe" evaluation semantic, the behavior is undefined.
  • If the implementation is not hardened, the behavior is undefined.
(since C++26)

References and iterators to the erased element are invalidated.

[edit] Complexity

Constant.

[edit] Example

Run this code
#include <list>
#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::list <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]
[]

[edit] See also

removes the first element
(public member function) [edit]
adds an element to the end
(public member function) [edit]
Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/container/list/pop_back&oldid=135221"

AltStyle によって変換されたページ (->オリジナル) /