У меня есть контейнер, заполненный парами. Я хочу итерации в ней с использованием общих алгоритмов STL (в моем случае это будет inner_product, но рассмотрим его как общую проблему). Алгоритм, который я использую, ожидает итераторов первого и последнего. Могу ли я предоставить специальные итераторы первым и последним, которые будут выполнять итерацию не по парам, а по первому элементу каждой пары?Предоставление итератора для первого элемента контейнера пар
Я знаю, что могу сделать это вручную, предоставляя объект функций ручной работы, который будет обертки вокруг стандартного итератора контейнера, отсрочив его до первого члена пары, предназначенного для самой пары, но я думаю, что есть также умный однострочный, чтобы сделать это для меня. Что бы это могло быть?
Вы имеете в виду, например, у вас есть map.begin(), и вы хотите перебирать его значения (.second)? – 2008-11-23 17:38:08
Да, это еще один пример той же основной проблемы. – 2008-11-23 17:39:04
разрешено увеличение? :) – 2008-11-23 17:49:37