首页 新闻 会员 周边

用C++建立一个职工信息管理系统,输出职工的信息,能够根据不同的方式计算工资,但是编译出错

0
悬赏园豆:30 [已解决问题] 解决于 2012-09-07 13:20

我想用C++建立一个职工信息管理系统,输出职工的信息,能够根据不同的方式计算工资,下面是继承职工积累的销售员类,我想通过函数 float data2() 来计算销售员的工资 wages ,可是编译出错,不知道是为什么。求各位大哥大姐帮帮忙。急!!!

 

#include <iostream>
#include <string>
using namespace std;
class employee                                                  //声明基类职工类employee
{public:
   employee(int num,string nam,int a,char s,int g);                   //声明构造函数
   void display();                                              //声明成员函数display
protected:                                                          
 int number;
 string name;
 int age;
 char sex;                                                  
 int grade;                                                            //以上五行为私有数据成员
};
   employee::employee(int num,string nam,int a,char s,int g):         //在类外定义employee构造函数,并将其成员初始化
                   number(num),name(nam),age(a),sex(s),grade(g){}   //参数列表                
    void employee::display()            //定义employee类函数display,用于输出各成员的值
   {cout<<"number:"<<number<<endl;
    cout<<"name:"<<name<<endl;
    cout<<"age:"<<age<<endl;
    cout<<"sex:"<<sex<<endl;
 cout<<"grade:"<<grade<<endl;
}


class salesman:public employee     //声明销售员类salesman,公有继承职工基     类 employee  

{public:
salesman(int num,string nam,int a,char s,int g=1);                     //声明构造函数
float data2()                                                   //定义计算销售员工资的函数
{float salesvalume;                                              
cout<<"please enter the salesvalume:";                          //从键盘上输入销售额
cin>>salesvalume>>endl;
wages=salesvalume*0.04;
return 0;
}
void display2();                                                //声明成员函数display2
protected:
 float wages;                                                //wages为保护成员
};
     salesman::salesman(int num,string nam,int a,char s,int g):                

//在类外定义salesman构造函数,并将其成员初始化
employee(num,nam,a,s,g){}
void salesman::display2()                                                                              

 //在类外定义成员函数display2,              用于输出salesman的相关信息
{cout<<"number:"<<number<<endl;
    cout<<"name:"<<name<<endl;
    cout<<"age:"<<age<<endl;
    cout<<"sex:"<<sex<<endl;
 cout<<"grade:"<<grade<<endl;
    cout<<"wages:"<<wages<<endl;
}


int main()
{salesman salem(2,"li-wang",21,"f");
salem.data2();
salem.display2();
return 0;
}

 

Mr小区的主页 Mr小区 | 初学一级 | 园豆:61
提问于:2012-09-04 21:45
< >
分享
最佳答案
0

不要>>endl

收获园豆:30
向往-SONG | 老鸟四级 |园豆:4853 | 2012-09-04 22:19

还是有一个错误哎,麻烦您可以说详细一点么?

Mr小区 | 园豆:61 (初学一级) | 2012-09-04 22:25

@Mr小区: 

第4个参数不是char嘛,怎么用"f"了。

其实我也不懂,才看了几天C++,你细心点应该就能解决大部分问题了。。。

向往-SONG | 园豆:4853 (老鸟四级) | 2012-09-04 22:33

@向往-SONG: 那请问应该改成什么样才能正常运行?

Mr小区 | 园豆:61 (初学一级) | 2012-09-05 11:48

@Mr小区: 

salesman salem(2,"li-wang",21,'f');

向往-SONG | 园豆:4853 (老鸟四级) | 2012-09-05 11:54
其他回答(1)
0

employee::employee(int num,string nam,int a,char s,int g): //在类外定义employee构造函数,并将其成员初始化
number(num),name(nam),age(a),sex(s),grade(g){} //参数列表

 

请问这句话什么意思啊?中间为什么有个冒号呢?

第五元素~MJ | 园豆:6 (初学一级) | 2012-09-06 16:36
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册