Код: Выделить всё
const std::map histogram{
{'A', 2},
{'D', 1},
{'M', 1},
};
for (const auto& [index, key, value] : std::views::enumerate(histogram))
{
// ...
}
< /code>
Но он не компилируется (компилятор Explorer) Ошибка отчетности: < /p>
:13:21: error: 3 names provided for structured binding
13 | for (const auto& [index, key, value] : std::views::enumerate(histogram))
| ^~~~~~~~~~~~~~~~~~~
:13:21: note: while 'const std::tuple' decomposes into 2 elements
Есть ли какой -то другой трюк, который я отсутствует, или в этом случае я просто не могу «распаковывать» элемент карты и вместо этого должен сохранить его как [index, intepric] , а затем использовать запись. Первый и запись. Второй ?
или, может быть, предлагает что -то другое, кроме перечисленного для этого сценария?
Подробнее здесь: https://stackoverflow.com/questions/797 ... -of-stdmap
Мобильная версия