编写一个包含student类的多文件程序.包含:
①类定义的头文件student.h,
②成员函数定义的源文件student.cpp,
③主函数的源文件main.cpp。
student类的私有数据成员包括:学号sn(student number) 、姓名 name 、性别 gender 。定义其普通构造函数、拷贝构造函数,并定义成员函数dp(display)完成学号,姓名和性别信息的输出。
①类定义的头文件student.h. ⬇
using namespace std;
class Student
{
public:
Student();
Student(const Student&x); //自定义拷贝构造函数
void ip(); //输入学生信息函数
void dp(); //输出函数
private:
string sn;
string name;
string gender;
};
②成员函数定义的源文件student.cpp. ⬇
#include<iostream>
#include<string>
#include"student.h"
using namespace std;
Student::Student() {
sn = { 0 };
name = { 0 };
gender = { 0 };
}
Student::Student(const Student&x) {
sn = x.sn;
name=x.name;
gender=x.gender;
cout << "The copy constructor has been called!" << endl;
}
void Student::ip() {
cout << "Please enter student number,name and gender: " << endl;
cin >> sn >> name >> gender;
cout << "The input of a set of student information has been completed!" << endl;
}
void Student::dp() {
cout << "Information about this student: " << sn << " " << name << " " << gender << endl;
}
③主函数的源文件main.cpp. ⬇
#include<iostream>
#include<string>
#include"student.h"
using namespace std;
int main() {
Student a; a.ip(); a.dp();
Student b(a); //调用拷贝构造函数
b.dp();
return 0 ;
}