韩国萨克斯舞曲:c++ string的排序问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/11 12:19:14
如何把存贮在vector里的string 排序
我这段代码排序的是vector里的内容啊

vector <string> vec(x,x+n);
vector <string> text;

copy(vec.begin(),vec.end(),back_inserter)text));
sort(text.begin(),text.end(),greater<string>());

可以使用比较函数或者函数对象两种方法之一。
1、定义比较函数:
bool Comp(const Person& p1, const Person& p2)
{
return p1.m_nID > p2.m_nID;
}
然后这样使用:
sort (vPerson.begin(), vPerson.end(), Comp);
2、使用函数对象
struct Comp {
bool operator()(const Person& p1, const Person& p2) {
return p1.m_nID > p2.m_nID;
}
};
然后这样使用:
sort (vPerson.begin(), vPerson.end(), Comp()); // Comp()是一个临时对象