设计一个用于人事管理的“人员”类

  1. 设计一个用于人事管理的(人员)类。考虑到通用性,这里只抽象出所有类型人员都具有的属性:编号、性别、出生日期、身份证号等。其中“出生日期”声明为一个“日期”类内嵌子对象。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数、拷贝构造函数、内联成员函数、组合。
#include 
using namespace std;
//日期类
class data{
public:    
	data(data & birthday);
	data(int xx=0,int yy=0,int zz=0);             //默认形参的构造函数
	void get0();
	~data(){};
private:
	int year ,month,day;
};
data::data(int xx,int yy,int zz){
    year=xx;                                       
	month=yy;
	day=zz;
}
void data::get0(){
	cout<<"出生日期:"<<year<<"年"<<month<<"月"<<day<<"日"<<endl;
}
//复制构造函数的实现
data::data(data & birthday){
	year=birthday.year;
	month=birthday.month;
	day=birthday.day;
}
//人员类的组合
class person{
public:
	person(int a,int b,int c,data d);
	void get();
	~person(){};
private:
	int number,sex,identify;
	data birth;
};
person::person(int a,int b,int c,data d):birth(d){
	number=a;
	sex=b;                                             //1是女 0是男
	identify=c;
	
}
void person::get(){
	cout<<"编号:"<<number<<endl;
	cout<<"性别:"<<sex<<endl;
	birth.get0();
	cout<<"身份证号:"<<identify<<endl;
}
int main(){
	int a,b,c,x,y,z,i,all;
	cin>>all;                    //输入人员个数	
	cout<<"人员个数:"<<endl;
	cout<<all<<endl;
	for(i=0;i<all;i++){
	cin>>a>>b>>c>>x>>y>>z;
	data f(x,y,z);
	person e(a,b,c,f);
	e.get();
	}	
	return 0;
}

你可能感兴趣的:(C++)