//Information.h
#include <iostream>
using namespace std;
class Employee
{ private:
char *m_name;
char *m_no;
public: Employee(char *name,char *no);
~Employee()
{delete []m_name;
delete []m_no;};
void Display();};
class Leader:public Employee
{ private:
char *m_posdes;
public:
Leader(char name[50],char no[50],char posdes[50]):Employee( name,no){strcpy(m_posdes,posdes);};
~Leader()
{ delete []m_posdes;}
void Display();};
//Information.cpp
#include"stdafx.h"
#include"Information.h"
#include<iostream>
using namespace std;
Employee::Employee( char *name,char *no)
{ strcpy( m_name,name);
strcpy ( m_no,no);
}
void Employee::Display()
{ cout<<"员工的姓名"<<m_name<<endl;
cout<<"员工编号"<<m_no<<endl;}
void Leader::Display()
{ Employee::Display();
cout<<"员工职务为"<<m_posdes<<endl;}
//8.1.1.cpp
#include "stdafx.h"
#include"Information.h"
#include<iostream>
using namespace std;
int main()
{ Employee *pe=new Leader("张三","1011","软件开发部部门经理");
pe->Display();
delete pe;
system("pause");
return 0;
}
Employee::Employee( char *name,char *no)
{
m_name=new char[50];
m_no=new char[50];
strcpy( m_name,name);
strcpy ( m_no,no);
}