STL multiset特点
(1)数据有序,可重复
(2)删除元素时,相同的所有元素都会被删掉
使用时需要包含头文件
代码:
#include#includeusing namespace std; //输出multiset void out(const multisetobj) { for (auto item : obj) { cout << item << " "; } cout << endl; } int main() { //创建multiset对象 multisetms = { 1,2,6,2,4,3,3,8 }; out(ms); //删除操作 ms.erase(2); out(ms); //查找是否包含元素4 auto it4 = ms.find(4); if (it4 != ms.end()) { cout << "包含元素4" << endl; } else { cout << "没有找到" << endl; } ms.insert(9); ms.insert(9); ms.insert(9); out(ms); //查找并输出多个元素 //pair<multiset::iterator, multiset::iterator> pa = ms.equal_range(9); //返回值太长,用auto关键字自动推导 auto pa = ms.equal_range(9); for (auto it = pa.first; it!=pa.second; it++) { cout << *it << " "; } cout << endl; return 0; }
运行结果: