map是一种关联容器,存储键值对<key,value>,默认按key从小到大排序。
map定义为:
其中less是map中默认用于比较的函数对象类,使键值对根据key顺序排列。其实现为:
template <class T> struct less
{
bool operator() (const T& x, const T& y) const {return x<y;}
typedef T first_argument_type;
typedef T second_argument_type;
typedef bool result_type;
};
map按值排序方法:
假设有map<int,int>m。重写比较类:
struct compare
{
bool operator()(const pair<int,int