# std::erase_if (std::map)

From cppreference.com
< cpp‎ | container‎ | map

Defined in header `<map>` |  |
template< class Key, class T, class Compare, class Alloc, class Pred > void erase_if( std::map <Key,T,Compare,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

| This section is incomplete Reason: no example

### See also

removeremove_if | removes elements satisfying specific criteria (function template)

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/container/map/erase_if&oldid=108073"