📄 student.h
字号:
//student.h文件
#ifndef H_STUDENT_H_ABCDE
#define H_STUDENT_H_ABCDE
#include <vector>
const int NUM_SUBJECT=1;//科目数
using namespace std;
//每一条记录的结构
struct Record
{
string number;//学号
string name;//姓名
string gender;//性别
float score[NUM_SUBJECT];//5门课的成绩
float sum;//总分
float average;//平均分
int index;//名次
bool toBeDeleted;//是否删除的标记
Record() {toBeDeleted=false;}
};
//用于存储通信录//存储学生信息使用的数据结构是数组的向量
class RecordVec:public vector<Record*>
{
friend ostream& operator<<(ostream& os,const RecordVec& c_rl);
friend istream& operator>>(istream& is,RecordVec& rl);
public:
//销毁数组中记录的所有Record所占用的内存空间,并且晴空数组存储的记录//该函数覆盖了基类中的同名函数
void clear()
{ //遍历整个记录提取并销毁所有Record
iterator iter;
iterator it_end=end();
for(iter=begin();iter!=it_end;iter++)
{delete *iter;}
vector<Record*>::clear();//调用超类的函数来清空记录
}
//销毁指定的记录,然后从数组中将其删除//该函数覆盖了基类中的同名函数
iterator erase(iterator where)
{
delete *where;
return vector<Record*>::erase(where);
}
~RecordVec()
{this->clear();}
};
#endif//H_STUDENT_H_ABCDE
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -