人的出生日期由年、月、日组成,定义一个结构体数据类型包含出生日期三个属性(struct date),定义一个学生类,类里面有属性学号、姓名、年龄、生日(用定义的结构体)、联系方式、地址等信息,可增加其他内容,给学生类赋值(自己的个人信息)
时间: 2023-10-20 21:55:15 浏览: 171
好的,根据您的要求,我来为您定义一个包含出生日期三个属性的结构体数据类型和一个学生类。
首先是结构体数据类型:
```c++
struct date{
int year;
int month;
int day;
};
```
接下来是学生类:
```c++
#include <string>
using namespace std;
class Student{
public:
Student(int no, string name, int age, date birth, string contact, string address); // 构造函数
void showInfo(); // 显示学生信息
private:
int m_no; // 学号
string m_name; // 姓名
int m_age; // 年龄
date m_birth; // 生日
string m_contact; // 联系方式
string m_address; // 地址
};
```
接下来是学生类的实现:
```c++
#include <iostream>
#include <string>
using namespace std;
struct date{
int year;
int month;
int day;
};
class Student{
public:
Student(int no, string name, int age, date birth, string contact, string address){
m_no = no;
m_name = name;
m_age = age;
m_birth = birth;
m_contact = contact;
m_address = address;
}
void showInfo(){
cout << "学号:" << m_no << endl;
cout << "姓名:" << m_name << endl;
cout << "年龄:" << m_age << endl;
cout << "生日:" << m_birth.year << "年" << m_birth.month << "月" << m_birth.day << "日" << endl;
cout << "联系方式:" << m_contact << endl;
cout << "地址:" << m_address << endl;
}
private:
int m_no;
string m_name;
int m_age;
date m_birth;
string m_contact;
string m_address;
};
```
然后我们就可以创建一个学生对象并输出他的信息了:
```c++
int main(){
date birth = {1995, 6, 1};
Student stu(1001, "张三", 26, birth, "13512345678", "北京市海淀区中关村大街1号");
stu.showInfo();
return 0;
}
```
输出结果如下:
```
学号:1001
姓名:张三
年龄:26
生日:1995年6月1日
联系方式:13512345678
地址:北京市海淀区中关村大街1号
```
阅读全文