标题:请教一下sort函数的用法
只看楼主
i80286
Rank: 6Rank: 6
等 级:侠之大者
威 望:5
帖 子:99
专家分:428
注 册:2013-9-30
 问题点数:0 回复次数:3 
请教一下sort函数的用法
sort函数如何使用自建头文件中的函数对数组进行排序?自写的头文件和子程序如下:
#ifndef TEMP_H_
#define TEMP_H_
class temp
{
private:
    int a,b;
    std::string str;
public:
    void test();
    bool Up (const temp &s1, const temp &s2);
};
#endif
子程序:
void temp::test()
{
    vector<temp> A;
    temp c;
    for(int i=0;i!=5;i++)
    {
        c.a=i;
        c.b=i+1;
        getline(cin,c.str);
        A.push_back(c);
    }
    sort(A.begin(),A.end(),Up);
    for(vector<temp>::iterator iter=A.begin();iter!=A.end();iter++)
    {
       cout<<(*iter).str<<"\t"<<(*iter).a<<"\t"<<(*iter).b<<endl;
    }
}
bool temp::Up (const temp &s1,const temp &s2)
{
    return s1.str<s2.str;
}
编译出错,VS2010提示:函数调用缺少参数列表;请使用“&temp::Up”创建指向成员的指针
搜索更多相关主题的帖子: private public 子程序 如何 
2013-09-30 13:46
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
static bool Up (const temp &s1, const temp &s2);
2013-09-30 13:56
i80286
Rank: 6Rank: 6
等 级:侠之大者
威 望:5
帖 子:99
专家分:428
注 册:2013-9-30
得分:0 
回复 2楼 rjsp
问题解决,能说一下为什么要如此定义?谢谢
2013-09-30 14:00
blueskiner
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:227
专家分:707
注 册:2008-9-22
得分:0 
查阅C++手册会发现,标准函数std::sort的声明,最后的参数必须为合法函数的入口。
2013-09-30 20:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-421311-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.065095 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved