パラメーターに定数イテレーターを受け取る関数があり、その関数を再帰的に呼び出したいのですが、イテレーターを 1 つ増やします (イテレーター自体を変更する必要はありません)。
私が見つけた唯一の解決策は、反復子のコピーを作成し、このコピーを事前にインクリメントして、最終的に関数呼び出しのパラメーターとして渡すことでした。
func(const FowardIterator & i, const container & c) {
// lot of very smart code
FowardIterator next = i;
++next;
func(next, c);
}
これを行う簡単な方法はありますか?一時イテレータを作成する必要はありませんか?