std::erase, std::erase_if (std::basic_string)
std::erase, std::erase_if (std::basic_string)
Defined in header <string>
|
||
---|---|---|
|
(1) | (since C++20) |
|
(2) | (since C++20) |
1) Erases all elements that compare equal to value
from the container. Equivalent to c.erase(std::remove(c.begin(), c.end(), value), c.end());
2) Erases all elements that satisfy the predicate pred
from the container. Equivalent to c.erase(std::remove_if(c.begin(), c.end(), pred), c.end());
Parameters
c | - | container from which to erase |
value | - | value to be removed |
pred | - | unary predicate which returns true if the element should be erased.The expression pred(v) must be convertible to bool for every argument v of type (possibly const) CharT, regardless of value category, and must not modify v. Thus, a parameter type of CharT&is not allowed, nor is CharT unless for CharT a move is equivalent to a copy (since C++11). |
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/string/basic_string/erase2