这个代码增加 删除成绩信息不会用map写 想知道怎么写
要求如下
//用C++ STL设计学生成绩存储管理程序(第1阶段)
//(1)基本数据结构:
//学生类CStudent,包括以下数据成员:
//学号nID(整型),姓名strName(字符串),成绩mapScores(用map容器存储修读过的各门课程的课程号(整型)和成绩);
//(2)数据存储:用某种适当的STL容器存储所有学生的数据;
//(3)增加三个学生数据(每个学生修读若干门课程)到容器中,输出容器中所有学生的信息;
//(4)数据维护:实现对学生数据的增、删、改、查功能(包括增、删、改、查学生信息,以及各科成绩)
#include<bits/stdc++.h>
using namespace std;
class CStudent{
int nID;
string strName;
map<int, double> mapScores; //存储多门课程成绩
public:
CStudent(int _nID, string _strName);
void setID(int _nID);
int getID();
void setName(string _name);
string getName();
map<int, double> getScores();
void insertScore(int cno, double score); //增加一门课程成绩 cno是课程编号
void eraseScore(int cno); //删除一门课程成绩
void modify(int cno,double score);//修改课程编号为cno的课程成绩并改为score
void display(); //输出学生学号、姓名和各科成绩
}
CStudent::CStudent(int _nID,string _strName)
{
nID=_nID;
strName=_strName;
}
void CStudent::setID(int _nID)
{
nID=_nID;
}
int CStudent::getID()
{
return nID;
}
void CStudent::setName(string _name)
{
strName=_strName;
}
string CStudent::getName()
{
return strName;
}
map<int,double> CStudent::getScores()
{
return mapScores;
}
void CStudent::insertScore()
{
//插入函数用map怎么写
}
void CStudent::eraseScore(int cno)
{
//删除语句用map怎么写
}
void CStudent::display()
{
cout<<"学生学号:"<<nID<<endl;
cout<<"学生姓名: "<<strName<<endl;
cout<<"学生成绩"//怎么输出
}
int main()
{
vector<CStudent> v1;
CStudent stu1(1001,"Phoebe");
stu1.insertScore(101,100);
stu1.insertScore(102,99);
stu1.insertScore(103,98);
CStudent stu2(1002,"Lilith");
stu2.insertScore(101,95);
stu2.insertScore(104,93);
}