STL -- map--vector--排序
2014-02-21 22:15
351 查看
//定义一个玩家vec vector<CPlayer*> vec; vector<玩家ID> vec1; //玩家map 拷贝入玩家vec for( Map_Player_it it = m_mapPlayer.begin(); it != m_mapPlayer.end(); it++) { CPlayer* pPla = it->second; for( 伙伴Map_it it1 = pPla->伙伴Map.begin(); it1 != pPla->伙伴.end(); it1++) { 伙伴类* pTemp = it1->second; if (pTemp) { vec.push_back(pTemp); vec1.push_back(it->first ); } } } //排序 for (unsigned int i = 0 ; i < vec.size()-1; i++) { for (unsigned int j = 0; j < vec.size()-(i+1); j++) { //根据玩家等级排序 //大于或者小于 决定升幂或者降幂 if (vec[j]->lev > vec[j+1]->lev) { CPlayer* tempPlayer = vec[j+1]; vec[j+1] = vec[j]; vec[j] = tempPla; int tempID = vec[j+1]; vec1[j+1] = vec1[j]; vec1[j] = tempID; } } } //取值 for (unsigned int i = 0 ; i < vec.size() ; i++) { 伙伴类 = vec[i]; 玩家ID = vec1[i]; 玩家类 = 玩家map.find(玩家ID); }
相关文章推荐
- 强制产生死锁的进程结束,产生core文件
- 观察者模式
- ZJU 3686 线段树
- 2014022101
- Linux控制台汉化Fbterm和Yong .
- WinCE5.0中文模拟器SDK(VS2005)的配置
- XAML学习笔记
- Codeforces 394C. Dominoes
- 黑马程序员—java(3)—数组与判断
- 如何查看ubuntu下显卡驱动是否已经成功安装
- DAO设计模式-1
- 1013 这个题中用到stack<int> st 需要学习
- 三天的努力,只弄懂了一个多位数相加
- 做事情要放下面子,拿起责任
- 反射技术
- Linear Decoders
- struts2标签
- codeforces 394B Very Beautiful Number
- WINCE5.0/6.0开发环境配置与SDK下载
- php ajax学习