问题描述
- STL map问题求助
-
程序的输出结果是:Bob,33333,2.2
Jack,222222,3.1
Mike,44444,3.5
Tom,111111,3.2请填空。
#include
#include
#include
using namespace std;
class Student
{
public:
string name;
struct Info{
int id;
double gpa;
} info;
Student(string s,int i,double g):name(s) {
info.id = i; info.gpa = g;
}
};
int main()
{
typedef --------------- MYMAP;
Student all[] = { Student("Tom",111111,3.2),Student("Jack",222222,3.1),Student("Bob",33333,2.2),
Student("Mike",44444,3.5)};
MYMAP mp;
for( int i = 0;i < 4; ++ i)
---------------------------------
MYMAP::iterator i;
for( i = mp.begin(); i != mp.end(); ++i ) {
cout << i->first << "," << i->second.id << "," << i->second.gpa << endl;
}
return 0;
}
解决方案
Map<int, Student>
mp..insert(i, all[i]);