set 、multiset都是集合类,差别在于set中部允许有重复元素,multiset中允许有重复元素。
常用函数
//(1)构造函数
set(const Pred& comp = Pred(), const A& al = A()); //创建空集合
set(const set& x); //拷贝构造函数
set(const value_type *first, const value_type *last,
const Pred& comp = Pred(), const A& al = A()); //拷贝[first,last)之间元素构成新集合
multiset(const Pred& comp = Pred(), const A& al = A()); //创建空集合
multiset(const multiset& x); //拷贝构造函数
multiset(const value_type *first, const value_type *last,
const Pred& comp = Pred(), const A& al = A()); // 拷贝[first,last)之间元素构成新集合
//(2)大小、判断空函数
int size() const ;//返回容器元素个数
bool empty() const ;//判断容器是否空,若返回true,表明容器已空
//(3)增加、删除函数
pair<iterator, bool> insert(const value_type& x); // 插入元素x
iterator insert(iterator it, const value_type& x); // 在迭代指针it处,插入元素x
void insert(const value_type *first, const value_type *last);//插入[first, last)间元素
iterator erase(iterator it);// 删除迭代指针it处元素
iterator erase(iterator first, iterator last);//删除[first, last)迭代指针间元素
size_type erase(const Key& key);//删除元素值等于key的元素
//(4)遍历函数
iterator begin();// 返回首元素的迭带器指针
iterator end();// 返回尾元素后的迭带器指针,而不是尾元素的迭带器指针
reverse_iterator rbegin();// 返回尾元素的逆向迭带器指针,用于逆向遍历容器
reverse_iterato