上使用LOWER_BOUND我有一张地图,看起来像嵌套地图
map<string , map<int,int>>
字符串中包含学生的名字,嵌套映射包含ID为关键和年龄作为价值。当我打印地图时,它会按照它应该打印的值。
但是,我想找到一个具有特定ID和更低的学生。我尝试使用LOWER_BOUND使用:
for(auto &x : class){
auto it = x.second.upper_bound(some_number);
for(; it != x .second.begin() ; --it){
cout << x.first << " = " << << it -> first << " " <<it -> second << endl;
}
}
这确实打印学生的姓名权,但他们的ID和年龄都只是零或随机数,是什么原因造成这种现象?它只适用于打印。
我试图找出关于这个cpp地图引用,但什么都没发现。
有没有可能拿到[最小,完整,可验证的示例] (http://stackoverflow.com/help/mcve) – JVApen
这是一个奇怪的数据结构。一名学生,通过他或她的名字确定,可以有多个ID和年龄? –
你是如何设法声明一个叫'class'的地图的? –