我试图插入一个地图的内容到另一个。下面是代码:为什么在插入地图时遇到seg错误?
std::map<std::string, int> Student::getGrades() const;
...
for(set<Student*, Cmp>::const_iterator it = s.begin(); it!=s.end(); ++it)
{
grades.clear();
grades.insert((*it)->getGrades().begin(), (*it)->getGrades().end());
for(map<string, int>::const_iterator itt = grades.begin(); itt!=grades.end(); ++itt)
{
if(itt->first == course && itt->second >= score1 && itt->second <= score2)
(*it)->display(cout);
}
}
s是一组包含指向学生对象和每个学生对象具有getGrades()方法返回的地图。我试图找到与我从文件中读入的成绩相匹配的成绩,并打印与这些成绩对应的记录。但是,插入方法给了我一个seg故障。有什么建议么?
你可以显示'Student :: getGrades()'的声明吗? – alexisdm 2012-04-09 03:16:43