📄 recordvec.h
字号:
#include <vector>//包含头文件
#define NUM_SUBJECT 5//定义全局变量
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(){ iterator it;
iterator iter = end();
for(it = begin();it!=iter; it++)
{delete *it;
}//利用超类的函数进行清空
vector<Record*>::clear();
}
//销毁指定的记录,然后从数组中将其删除
// 该函数覆盖了基类中的同名函数
iterator erase(iterator where)
{ delete *where;
return vector<Record*>::erase(where);
}
~RecordVec()
{
this->clear();
}
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -