程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 11_3CEmployee繼承自CPerson類

11_3CEmployee繼承自CPerson類

編輯:C++入門知識

print?#include <iostream>  
#include <string.h>  
#include <iomanip>  
using namespace std; 
 
class CPerson 

protected: 
    char *m_szName; 
    char *m_szId; 
    int m_nSex;//0:women,1:man  
    int m_nAge; 
public: 
    CPerson(char *name,char *id,int sex,int age); 
    void Show1(); 
    ~CPerson(); 
}; 
 
class CEmployee:public CPerson 

private: 
    char *m_szDepartment; 
    float m_Salary; 
public: 
    CEmployee(char *name,char *id,int sex,int age,char *department,float salary); 
    void Show2(); 
    ~CEmployee(); 
}; 
 
CPerson::CPerson(char *name,char *id,int sex,int age) 

    m_szName=new char[strlen(name)+1]; 
    strcpy(m_szName,name); 
    m_szId=new char[strlen(id)+1]; 
    strcpy(m_szId,id); 
    m_nSex=sex; 
    m_nAge=age; 

 
void CPerson::Show1() 

    cout<<setw(10)<<m_szName<<setw(25)<<m_szId; 
    if(m_nSex==0) 
        cout<<setw(7)<<"women"; 
    else 
        cout<<setw(7)<<"man"; 
    cout<<setw(5)<<m_nAge<<endl; 

 
CPerson::~CPerson() 

    delete [ ]m_szName; 
    delete [ ]m_szId; 

 
CEmployee::CEmployee(char *name,char *id,int sex,int age,char *department,float salary) 
:CPerson(name,id,sex,age) 

    m_szDepartment=new char[strlen(department)+1]; 
    strcpy(m_szDepartment,department); 
    m_Salary=salary; 

 
void CEmployee::Show2() 

    cout<<"name"<<setw(5)<<"id"<<setw(5)<<"sex"<<setw(5)<<"age"<<setw(15)<<"department"<<setw(10)<<"salary"<<endl; 
    cout<<m_szName<<setw(5)<<m_szId; 
    if(m_nSex==0) 
        cout<<setw(5)<<"women"; 
    else 
        cout<<setw(5)<<"man"; 
    cout<<setw(5)<<m_nAge<<setw(15)<<m_szDepartment<<setw(10)<<m_Salary<<endl; 
}    
 
CEmployee::~CEmployee() 

    delete [ ]m_szDepartment; 

 
int main() 

    char name[10],id[19],department[10]; 
    int sex,age; 
    float salary; 
    cout<<"input employee's name,id,sex(0:women,1:man),age,department,salary:\n"; 
    cin>>name>>id>>sex>>age>>department>>salary; 
    CEmployee employee1(name,id,sex,age,department,salary); 
    employee1.Show2(); 
    return 0; 

運行結果: 

#include <iostream>
#include <string.h>
#include <iomanip>
using namespace std;

class CPerson
{
protected:
 char *m_szName;
 char *m_szId;
 int m_nSex;//0:women,1:man
 int m_nAge;
public:
 CPerson(char *name,char *id,int sex,int age);
 void Show1();
 ~CPerson();
};

class CEmployee:public CPerson
{
private:
 char *m_szDepartment;
 float m_Salary;
public:
 CEmployee(char *name,char *id,int sex,int age,char *department,float salary);
 void Show2();
 ~CEmployee();
};

CPerson::CPerson(char *name,char *id,int sex,int age)
{
 m_szName=new char[strlen(name)+1];
 strcpy(m_szName,name);
 m_szId=new char[strlen(id)+1];
 strcpy(m_szId,id);
 m_nSex=sex;
 m_nAge=age;
}

void CPerson::Show1()
{
 cout<<setw(10)<<m_szName<<setw(25)<<m_szId;
 if(m_nSex==0)
  cout<<setw(7)<<"women";
 else
  cout<<setw(7)<<"man";
 cout<<setw(5)<<m_nAge<<endl;
}

CPerson::~CPerson()
{
 delete [ ]m_szName;
 delete [ ]m_szId;
}

CEmployee::CEmployee(char *name,char *id,int sex,int age,char *department,float salary)
:CPerson(name,id,sex,age)
{
 m_szDepartment=new char[strlen(department)+1];
 strcpy(m_szDepartment,department);
 m_Salary=salary;
}

void CEmployee::Show2()
{
 cout<<"name"<<setw(5)<<"id"<<setw(5)<<"sex"<<setw(5)<<"age"<<setw(15)<<"department"<<setw(10)<<"salary"<<endl;
 cout<<m_szName<<setw(5)<<m_szId;
 if(m_nSex==0)
  cout<<setw(5)<<"women";
 else
  cout<<setw(5)<<"man";
 cout<<setw(5)<<m_nAge<<setw(15)<<m_szDepartment<<setw(10)<<m_Salary<<endl;

CEmployee::~CEmployee()
{
 delete [ ]m_szDepartment;
}

int main()
{
 char name[10],id[19],department[10];
 int sex,age;
 float salary;
 cout<<"input employee's name,id,sex(0:women,1:man),age,department,salary:\n";
 cin>>name>>id>>sex>>age>>department>>salary;
 CEmployee employee1(name,id,sex,age,department,salary);
 employee1.Show2();
 return 0;
}
運行結果:

 

\

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved