设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 1124|回复: 0
打印 上一主题 下一主题

排序问题!

[复制链接]
跳转到指定楼层
1#
发表于 2009-11-4 00:01:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
class CEmployee {
//friend ostream &operator<<(ostream &output,CEmployee &m);
private:
int type;
char _name[30];
char _sex[3];//男或女
BDay _birthday;//显示格式:1980-1-1,请自己设计并实现类BDay.
public:
CEmployee(){};
CEmployee(int a,const char* nm, const char* sex, const BDay& bd);//构造函数
int EmpolyeeType();//返回雇员类型
string EmpolyeeName();//返回雇员名字
........
class CManager : public CEmployee{
private :
float _salary;//固定月薪
public :
CManager(); //初始化父类属性值,并初始化月薪为0.0
CManager(int c,char* name,char* sex,BDay a,float salary);
.........
class CWage : public CEmployee {
private :
float _wage;//时薪
float _hours;//小时
public :
CWage();//自己编写CWage的恰当的构造函数。注意在生成一个CWage对象时构造函数必须初始化该对象的_wage, _hours属性值为0.0,0.0。
CWage(int c,char* name,char* sex,BDay a,float wg,float hrs);
......
比如有这样三个类,我用list<CEmployee*>pEmplist(指针可以指向这三个类)保存记录,现在想对记录按名字排序,无奈是指针类型,写了个下面这个
bool operator>(CEmployee* x, CEmployee* y)
{
return x->EmpolyeeName()>y->EmpolyeeName();
}
void INput::sortsalary(){
pEmplist.sort(greater<CEmployee*>());
}
调试总是d:\vs2005\55555555555\company_system\company_system\cempolyee.cpp(295) : error C2803: “operator >”必须至少有一个类类型的形参
如果不是指针我还可以写,只是指针类型排序有点困难........不知哪位高手帮帮忙?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-18 14:52 , Processed in 0.111369 second(s), 9 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表