Предположим, у меня есть map<int, set<int>>
с именем my_map
, и я хочу начать с элемента со значением ключа 5
и циклом назад , пока не доберусь до начала, и проверить каждый набор на наличиеопределенный критерий.(Мне нужно вернуться назад, потому что я хочу break
, если критерий удовлетворен.)
std::find
возвращает прямой итератор, поэтому я решил сделать это
for (auto rit = std::make_reverse_iterator(++my_map.find(A[i])); rit != my_map.rend(); ++rit) {
//check conditions on rit->second
}
Это лучший способ?