std::erase_if (std::unordered_set)
Defined in header <unordered_set> | ||
---|---|---|
template< class Key, class Hash, class KeyEqual, class Alloc, class Pred >
void erase_if(std::unordered_set<Key,Hash,KeyEqual,Alloc>& c, Pred pred);
| (1) | (since C++20) |
Erases all elements that satisfy the predicate pred
from the container. Equivalent to.
for (auto i = c.begin(), last = c.end(); i != last; ) {
if (pred(*i)) {
i = c.erase(i);
} else {
++i;
}
}
Parameters
c | - | container from which to erase |
pred | - | predicate that returns true if the element should be erased |
Complexity
Linear.
Example
See also
removes elements satisfying specific criteria (function template) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/container/unordered_set/erase_if