重载比较运算符,现在我这里整理了三种方法
1、修改比较函数(默认less)
2、重载 < 运算符
3、自定义比较函数
- 注:因为set容器默认是升序
- 要降序的话,就可以使用这三种方法
1、修改比较函数(默认less)
#include <iostream>
#include <set>
using namespace std;
int main(int argc, const char * argv[]) {
// insert code here...
set<int,greater<int>> s;
set<int,greater<int>> ::iterator iter;
s.insert(1);
s.insert(2);
s.insert(3);
s.insert(4);
for(iter=s.begin();iter!=s.end();iter++)
cout<<*iter<<" ";
cout<<endl;
return 0;
}
这个方法的重点就在于set<ing,gteater<int>> 中的 <gteater<int>>
greater表示内置类型从大到小排序,less表示内置类型从小到大排序
2、重载 < 运算符
#include <iostream>
#incl