Почему мне не разрешено читать объект из константы unordered_map?
const unordered_map<int, int> z;
int val = z[5]; // compile error
Ошибка под clang следующая:
error: no viable overloaded operator[] for type 'const
unordered_map<int, int>'
int val = z[5];
Учитывая, что эквивалентный код с помощью const vector
отлично работает, я несколько смущен, почему мы получаем это поведение.