实验内容
(1) 设计一个学生类,它的私有数据成员包含:如学号、姓名、性别、籍贯等(可根据实际情况自己设计所包含数据成员及其类型);若干公有成员函数,分别用来设置学生的相关信息和显示该学生的信息。编写类和主函数进行验证。要求成员函数在类外实现。
思路
1、操作步骤:
包含类的C++程序编写分3步骤实现:
(1)类的声明:包含类名、成员变量、成员函数的声明
(2)类的定义:包含类成员函数的定义,一般放到类外,以保证类结构清晰。
(3)类的使用:包含对象的定义、对象成员的引用、一般放到main函数中,可查看执行效果。
Student类的实现思路如下:左侧一栏是Student类的组成和说明,右侧一栏是类的代码,是根据左侧一栏,逐行转换过来的。
(1)Student类的声明:
class Student
{ //类的主体
private://静态属性==》类的数据成员
string id; //学号
string name; //姓名
int age; //年龄
string sex; //性别
string jiguan; //籍贯
public://动态功能==》类的函数成员
void set( ); //静态属性的赋值
void display( ); //静态属性的显示
};
(2)动态功能的实现:
(a)静态属性的赋值函数set( );使用cin命令,从键盘接受用户输入的各项信息。
void Student::set()
{
cout<<"请输入学号:";cin>>id;
cout<<"请输入姓名:";cin>>name;
cout<<"请输入年龄:";cin>>age;
cout<<"请输入性别:";cin>>sex;
cout<<"请输入籍贯:";cin>>jiguan;
}
(b)静态属性的显示函数display( ); 使用cout命令,向显示器输出学生的各项信息
void Student::display()
{
cout<<"您输入的学生信息为:"<<"学号:"<<id<<" "<<"姓名:"<<name<<" "<<"年龄:"<<age<<" "<<"性别:"<<sex<<" " <<"籍贯:"<<jiguan<<" "<<endl;
}
(3)Student类的使用:
(a)Studnet类的使用主要包括两项工作:
- 定义该类的对象
语法:类名 对象名; 例如:Student stud1,stud2,stud3;
- 通过该对象调用类的成员(成员变量或成员函数)实现一定的功能
语法:对象名.成员名; 例如stud1.display();
int main() {
Student stud1;
stud1.set();
stud1.display();
return 0;
}
2、整段代码:
#include <iostream>
#include <string>
using namespace std;
class Student
{
private:
string id;
string name;
int age;
string sex;
string jiguan;
public:
void set();
void display();
};
void Student::set()
{
cout<<"请输入学号:";cin>>id;
cout<<"请输入姓名:";cin>>name;
cout<<"请输入年龄:";cin>>age;
cout<<"请输入性别:";cin>>sex;
cout<<"请输入籍贯:";cin>>jiguan;
}
void Student::display()
{
cout<<"您输入的学生信息为:"<<"学号:"<<id<<" "<<"姓名:"<<name<<" "<<"年龄:"<<age<<" "<<"性别:"<<sex<<" " <<"籍贯:"<<jiguan<<" "<<endl;
}
int main() {
Student stud1;
stud1.set();
stud1.display();
return 0;
}