#include <iostream>
#include <string.h>
using namespace std;
class birthday;
class People
{
public:
class birthday//people中birthday类的聚集
{
public:
birthday(int y=0,int m=0,int d=0)//构造函数初始化
{
year=y;
month=m;
day=d;
}
birthday(birthday&b)//复制构造函数
{
year=b.year;
month=b.month;
day=b.day;
}
void setbirthday()//生日信息的设置
{
int yy,mm,dd;
cout<<"请输入生日"<<endl;
cin>>yy>>mm>>dd;
year=yy;
month=mm;
day=dd;
}
inline void showbirthday()//生日信息的展示
{
cout<<year<<"年"<<month<<"月"<<day<<"日"<<endl;
}
~birthday(){};
private:
int year,month,day;
};
void showIF();//显示员工的信息
People(birthday BD,char num[]=" ",char idnum[]=" ",char sx[]=" ",char nm[]=" ")//初始化people
{
Birthday=BD;
strcpy(name,nm);
strcpy(id,idnum);
strcpy(sex,sx);
strcpy(number,num);
}
People();
People(People&p):Birthday(p.Birthday)
{
strcpy(name,p.name);
strcpy(number,p.number);
Birthday=p.Birthday;
strcpy(sex,p.sex);
strcpy(id,p.id);
}
~People(){};
private:
char name[11];
char number[7];
char sex[3];
char id[16];
birthday Birthday;
};
inline void People::showIF()//展示信息,可能会多次使用设置为内联函数
{
cout<<"该员工信息如下:"<<endl;
cout<<"name number sex(m/w) id birthday"<<endl;
cout<<" "<<name<<" "<<number<<" "<<sex<<" "<<id<<" ";
Birthday.showbirthday();
}
int main()
{
People p5[5];
char num1[7],id1[16],sex1[3],name1[11];
for(int i=0;i<5;i++)
{
People.birthday b1;
b1.setbirthday();
cout<<"请输入员工的name:";
cin>>name1;
cout<<"请输入员工的number:";
cin>>num1;
cout<<"请输入员工的sex(w为女性,m为男性):";
cin>>sex1;
cout<<"请输入员工的id:";
cin>>id1;
People p[i](b1,num1,id1,sex1,name1);//对P1对象进行初始化
}
for(int i=0;i<5;i++)
p5[i].showIF();
return 0;
}
主要是 People.birthday b1; 这一行报错 我是整体都不太清晰 想请问一下大佬们怎么改