erase
描述 (Description)
它从unordered_set容器中删除单个元素或一系列元素。
声明 (Declaration)
以下是std :: unordered_set :: erase的声明。
C++11
iterator erase ( const_iterator position );
参数 (Parameters)
position - 表示单个元素的位置。
k - K是要删除的元素的值。
args - 这些参数传递给构造函数。
返回值
它返回成员类型迭代器是一个前向迭代器类型。
异常 (Exceptions)
如果任何元素比较对象抛出异常,则抛出异常。
请注意,无效参数会导致未定义的行为。
时间复杂
恒定时间。
例子 (Example)
以下示例显示了std :: unordered_set :: erase的用法。
#include <iostream>
#include <string>
#include <unordered_set>
int main () {
std::unordered_set<std::string> myset =
{"USA","Canada","France","UK","Japan","Germany","Italy"};
myset.erase ( myset.begin() );
myset.erase ( "France" );
myset.erase ( myset.find("Japan"), myset.end() );
std::cout << "myset contains:";
for ( const std::string& x: myset ) std::cout << " " << x;
std::cout << std::endl;
return 0;
}
让我们编译并运行上面的程序,这将产生以下结果 -
myset contains: Canada UK Italy