std::erase_if (std::unordered_multiset)_C++中文网
| template< class Key, class Hash, class KeyEqual, class Alloc, class Pred > typename std::unordered_multiset<Key,Hash,KeyEqual,Alloc>::size_type |
(C++20 起) | |
从容器中擦除所有满足谓词 pred 的元素。等价于
auto old_size = c.size(); for (auto i = c.begin(), last = c.end(); i != last; ) { if (pred(*i)) { i = c.erase(i); } else { ++i; } } return old_size - c.size();
参数
| c | - | 要从中擦除的元素 |
| pred | - | 若应该擦除元素则对它返回 true 的谓词 |
复杂度
线性。