Пожалуйста, рассмотрите следующую ситуацию:
using namespace std;
unordered_map<int, vector<A>> elements;
Теперь я повторяю эту неупорядоченную карту:
for (auto it = elements.begin(); it != elements.end(); ++it)
Внутри цикла я формирую кластеры из нескольких элементов elements
(текущий, на который указывает it
, и некоторые другие, не обязательно следующие в строке!). Поскольку каждый элемент может быть только частью одного кластера, я хотел бы удалить его с карты, а затем продолжить со следующего элемента (т.е. Построить следующий кластер).
Как я могу это сделать и продолжать итерацию в правильной позиции?