std::map 排序规则研究
来源:互联网 发布:建立网络共享文件夹 编辑:程序博客网 时间:2024/06/06 00:23
struct C_S
{
int m_a;
std::string m_s;
C_S(const std::string &s,int i):m_a(i),m_s(s)
{
//
}
//重载operator<,支持
//std::map<C_S,int>这类默认定义,实际
//是std::map<C_S,int,std::less<C_S> >;
bool operator<(const C_S &c_s) const
{
return c_s.m_a > this->m_a;
}
//重载operator>,支持
//std::map<C_S,int,std::greater<C_S> >
//指定map按key 从大到小排序
bool operator>(const C_S &c_s) const
{
return c_s.m_a < this->m_a;
}
//bool operator!(const C_S &c_s) const
//{
//return c_s.m_a == this->m_a && c_s.m_s == this->m_s;
//}
};
void map_test()
{
//MAP 元素按从大大小的顺序排列
std::map<C_S,int> less_map;
less_map[C_S("AAA",3)] = 3;
less_map[C_S("BBB",1)] = 1;
less_map[C_S("CCC",2)] = 2;
std::map<C_S,int,std::less<C_S>>::iterator it;
std::cout<<"MAP less rule:"<<endl;
for(it = less_map.begin();it != less_map.end();++it)
{
std::cout<<it->second<<":"<<it->first.m_a<<endl;
}
std::cout<<endl;
//MAP 元素按从大大小的顺序排列
std::map<C_S,int,std::greater<C_S> > greater_m;
greater_m[C_S("AAA",3)] = 3;
greater_m[C_S("BBB",1)] = 1;
greater_m[C_S("CCC",2)] = 2;
std::map<C_S,int,std::greater<C_S>>::iterator map_it;
std::cout<<"MAP greater rule:"<<endl;
for(map_it = greater_m.begin();map_it != greater_m.end();++map_it)
{
std::cout<<map_it->second<<":"<<map_it->first.m_a<<endl;
}
}
//去处 multimap 里面重复数据的方法
int main(int argc,char *argv[])
{
map_test();
}
- std::map 排序规则研究
- Std::map的排序
- std::map排序的原理
- std::map排序的原理
- C++ map 自定义排序规则
- std::map&&std::set
- std::map & std::hash_map
- std::map
- std::map
- std::map
- std::map
- std::map
- std::map
- std::map
- std::map
- std::map
- std::map
- std::map
- 简要解释一下activity、 intent 、intent filter、service、Broadcast、BroadcaseReceiver
- hadoop eclipse插件位置
- 貪心::poj1328 radar installation && poj2109 Power of Cryptography && poj2586 Y2K Accounting Bug
- NSRunLoop的进一步理解
- 高手教你13招,让你轻松征服上司,站稳脚跟
- std::map 排序规则研究
- jsp读书笔记——servlet过滤器
- QT的内存管理
- 操作xml 4种方法
- 汉字转拼音首字母
- LinuxGazette
- 数据库对base64的支持
- S5PV310 三星ARM CORTEX-A9双核开发板 Origen Board
- assert, commons lang validate和Google Guava Preconditions.*