std::unordered_map clear() method
- od C++11
// Non const version only
void clear() noexcept;
Erases all elements from the container. After this call, size()
returns zero.
Invalidation
Invalidates any references, pointers, or iterators referring to contained elements.
May also invalidate past-the-end iterators.
Parameters
(none)
Return value
(none)
Complexity
Linear in the size of the container - O(size()).
Exceptions
(none)
Example
Main.cpp
#include <algorithm>
#include <iostream>
#include <unordered_map>
int main()
{
std::unordered_map<int, char> container{{1, 'x'}, {2, 'y'}, {3, 'z'}};
auto print = [](std::pair<const int, char>& n) {
std::cout << " " << n.first << '(' << n.second << ')';
};
std::cout << "Before clear:";
std::for_each(container.begin(), container.end(), print);
std::cout << "\nSize=" << container.size() << '\n';
std::cout << "Clear\n";
container.clear();
std::cout << "After clear:";
std::for_each(container.begin(), container.end(), print);
std::cout << "\nSize=" << container.size() << '\n';
}
Possible output
Before clear: 1(x) 2(y) 3(z)
Size=3
Clear
After clear:
Size=0
This article originates from this CppReference page. It was likely altered for improvements or editors' preference. Click "Edit this page" to see all changes made to this document.
Hover to see the original license.
Hover to see the original license.