#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
bool strict_weak_ordering(const pair<int,string> a, const pair<int,string> b)
{
return a.first > b.first;
}
//通過運算符重載,利用sort函數實現降序排列
int main()
{
vector<pair<int, string> > vec;
//為了避免與>>運算符混淆,所以這里中間要有個空格
vec.push_back(make_pair<int, string>(5, "bingo"));
vec.push_back(make_pair<int, string>(4, "bing"));
vec.push_back(make_pair<int, string>(6, "acbingo"));
vec.push_back(make_pair<int, string>(6, "ACBingo"));
vec[3].first++;
sort(vec.begin(), vec.end(), strict_weak_ordering);
//使用迭代器
vector<pair<int, string> >::iterator it = vec.begin(), end = vec.end();
for (;it!=end;++it) cout<<it->first<<endl;
//模擬正常數組
for (int i=0;i<vec.size();i++) cout<<vec[i].second<<endl;
return 0;
}
