私のカスタムランダムアクセスコレクションクラスのイテレータが必要です。私はstd::sort
とイテレータを使いたいです。制限された時間予算を持つC++の新人だから、私は自分自身ですべてのことを書いてはいけません。なぜboostのcounting_iteratorはconstですか?
私のイテレータは基本的に単なる単純なものですsize_t
。したがって、私はboost::counting_iterator
が良いマッチであると思った。私がIncrementable
を完成させたら、counting_iterator
は参照タイプをconst Incrementable&
と定義しなければならないことに気がつきました。
私はまだ多くのC++で混乱していますが、のイテレータを使用できないと考えています。なぜなら、constイテレータはコレクション要素を入れ替えることができないからです。
boost::counting_iterator
は参照タイプをconst
と定義していますが、もっと重要なのは、代わりに使用する必要があるのはなぜですか。
'boost :: counting_iterator'はコンテナにアクセスできません。これは、自然数のシーケンス「0,1,2、...」に「アクセスする」ために作成されます。そのため、その参照型は 'const'です:' 2'をハックして '3'にすることはできません。 –
"カスタムランダムアクセスコレクションクラスのイテレータが必要です。" 「私は初心者です」と互換性がない可能性があります。なぜカスタムコレクションクラスが必要なのか尋ねてもいいですか? –
"私のイテレータは基本的に単純な' size_t'です "と私は理解していません。'size_t'はイテレータのコンセプトの要件を満たしていません。 – KABoissonneault