empty() : 空则返回true
size(): unordered_set中的元素个数
max_size(): unordered_set的最大容量(因为unordered_set是线性存储的,会有大小上限)
find():查找
iterator find ( const key_type& k ); const_iterator find ( const key_type& k ) const;
如果能找到,则返回迭代器
如果找不到,则返回unordered_set::end()
count()
size_type count ( const key_type& k ) const;
返回与k的哈希值相同的元素个数
k存在
⟷
\longleftrightarrow
⟷
find(k)!=unoredered_set::end()
⟷
\longleftrightarrow
⟷
count(k)>0
insert()
返回值为pair<iterator,bool>
emplace()
与insert的区别是:将插入和构造合并了,减少了中间变量的产生
比如:
insert(String("hello"))
和
emplace("hello")
是差不多的
但是后者减少了中间临时变量的构造。
erase() 删除
//by position (1)
iterator erase ( const_iterator position );//返回值是被删元素的下一个元素的迭代器
//by key (2)
size_type erase ( const key_type& k );//返回值是被删元素的下一个元素的迭代器
//range (3)
iterator erase ( const_iterator first, const_iterator last );//参数既可以是值也可以是指针,返回值是列表中被成功删掉的元素个数