У меня есть код, который выглядит примерно так:
std::map<int, int> map1, map2;
BOOST_FOREACH(int i, map1)
{
// do steps 1-5 here...
}
BOOST_FOREACH(int i, map2)
{
// do steps 1-5 (identical to above) here...
}
Есть ли способ объединить карты, чтобы исключить повторяющийся код во втором цикле? Или способ расширить BOOST_FOREACH для перебора двух разных карт за один раз? Очевидно, я не хочу увеличивать временную сложность программы (иначе я мог бы просто создать новую карту и вставить в нее map1 и map2). У меня такое чувство, что я упускаю здесь что-то элементарное.