sort函数中的第三个参数

来源:互联网 发布:福利彩票双色球计算法 编辑:程序博客网 时间:2024/06/06 03:08

在写poj2421之前看了别人的代码,里面这段我开始不明白!!

“sort(amount,amount+counter,cmp);

 

下面这段代码是我在别处摘抄的,希望之前不明白的朋友能仔细的看看。

 

 

 

sort的第三个参数,一直是用仿函数,没有想到用函数指针也可以!

sort的第三个参数可以用函数指针也可以用仿函数。
用函数指针如下:
bool str_cmp(const string& first, const string& second)
{
return first.compare(second) < 0 ? true: false;
}
int main(int argv, char* argc[])
{
vector<string> vString;
char str[100];
int i = 0;
while(cin>>str)
{
  vString.push_back(str);
  i++;
}
sort(vString.begin(), vString.end(), str_cmp);
for(i = 0; i < 100; ++i)
  cout<<vString[i].c_str()<<endl;
CreateTree(vString);
DeleteTree();
return 0;
}
以上将字符串非递减排序