?? student.h
字號:
//student.h
#ifndef H_STUDENT_H_ABCDE
#define H_STUDENT_H_ABCDE
#include <vector>
const int 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_r1);
friend istream& operator >> (istream& is,RecordVec& r1);
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 + -