1.定义的排序函数:
class CompareTest
{
public:
//重载 bool operator()(int v1, int v2) { return v1 > v2; }
};
2.调用:
map<int, int, CompareTest>m;
m.insert(pair<int, int>(3, 4));
3.报错:
error C3848: expression having type 'const XXX' would lose some const-volatile qualifiers in order
4.解决思路
在operator() 后面添加const
class CompareTest
{
public:
//重载 bool operator()(int v1, int v2) const { return v1 > v2; }
};