Я ищу удобный для чтения, элегантный способ сделать следующее на C ++, здесь показано на Python:
for datum in data[1:]:
do work.
Итераторы для рассматриваемых данных могут не поддерживают итераторы с произвольным доступом, поэтому я не могу просто использовать:
for (mIter = data.begin() + 1; mIter != data.end(); mIter++)
Лучшее, что я придумал, это следующее:
iterable::iterator mIter = data.begin();
for (mIter++; mIter != allMjds.end(); mjdIter++) {
do work.
}
Это не слишком долго, но вряд ли объясняет - на первый взгляд это действительно похоже на ошибка!
Другое решение - иметь "n-й элемент" вспомогательная функция, я думаю. Есть какие-нибудь более крутые идеи?