1 #include <iostream>
2 #include <string>
3 using namespace std;
4
5 class Date //日期类
6 {
7 private:
8 int year;
9 int month;
10 int day;
11 public:
12 Date(){} //默认构造
13 Date(int y,int m,int d) //带参构造
14 {
15 year=y;
16 month=m;
17 day=d;
18 }
19 void set() //设置数据函数
20 {
21 cin>>year>>month>>day;
22 }
23 void display() //显示函数
24 {
25 cout<<year<<"年"<<month<<"月"<<day<<"日";
26 }
27 };
28
29 class Person //人员类
30 {
31 private:
32 int num;
33 char sex;
34 Date birthday;
35 char ID[18];
36 public:
37 Person(){} //默认构造
38 Person(int n,int y,int m,int d,char id[18],char s='m'):birthday(y,m,d)
39 {
40 num=n;
41 sex=s;
42 strcpy(ID,id);
43 } //有默认值的带参构造
44 Person(Person& p) //拷贝构造
45 {
46 num=p.num;
47 sex=p.sex;
48 birthday=p.birthday;
49 strcpy(ID,p.ID);
50 }
51 void input() //输入函数
52 {
53 cout<<"录入数据:"<<endl;
54 cout<<"编号:";
55 cin>>num;
56 cout<<"性别(m/f):";
57 cin>>sex;
58 cout<<"生日:";
59 birthday.set();
60 cout<<"身份证号:";
61 cin>>ID;
62 ID[18]='