значение ?
#include <iostream>
#include <typeinfo>
#include <map>
using namespace std;
int main() {
multimap <int, multimap <int, multimap <int, multimap <int, int>>>> data;
data = {{1, {{2, {{3, {{4, 5}}}}}}}};
int k = data.find(1) -> second.find(2) -> second.find(3) -> second.find(4) -> second;
cout << k;
return 0;
}
c map всё просто data[1][2][3][4], а тут как ?
multimap предполагает возможность иметь несколько значений с одинаковым ключом. find находит одно из них, а ещё может провалиться. В случае с map operator[] создаст default constructed значение, если его не было. Это две разных семантики, какая ожидается?
а ну значит всё правильно и иначе сделать нельзя спасибо
почему data.insert({1, {{2, {{3, {{4, 5}}}}}}}); data.insert({1, {{3, {{3, {{6, 7}}}}}}}); не работает как ```
Обсуждают сегодня