上使用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'的地圖的? –