0

重複の可能性:
C++ 用の循環リストの標準実装はありますか?

アクセスが「リングのように」動作するデータ構造を探しているので、イテレータをインクリメントして最後に到達すると、最初にリセットされます。データを追加すると、サイズが大きくなるはずです。

void ++(iterator& it, datastructure& data)
{       
    ++it;   // should have checked if it is already the end
    if( it == data.end() && data.size() )
    {
         it = data.begin();
    }
}

boost::circular_buffer挿入はリングのように振る舞うので、私が探しているものではないと思います。私のリストは無限に成長できるようにする必要があります。

これには一種の標準的な方法がありますか?回避策を簡単に見つけることができますが、このようなものが存在するかどうか興味があります。最後が常に最初の要素などに接続されているリンクされたリスト。

アップデート

示唆されているように、私は同様の質問を調べましたが、そのs3riusようなもののために独自のイテレータを作成する方法の例があります。私はこれを試して、クローズに投票しました。

4

0 に答える 0