-3

がランダム アクセス イテレータタイプをvector<double>::iterator返すことは知っていますlist<double>::iterator

4

3 に答える 3

5

はいbidirectional iterator

n3337 23.3.5.1/1

リストは、双方向反復子をサポートするシーケンス コンテナーです。

于 2012-08-23T16:03:11.363 に答える
3

++ と -- を引き続き使用できるため、双方向です。++ しか実行できない場合は、前方反復子です (std::forward_list を参照)。

于 2012-08-23T16:01:54.460 に答える
0

わかりました、私の質問自体のほとんどが間違っています.C++ リファレンスの長い研究の後に理解しました.私の質問はあまり意味がないので、私はそれを自分で答えます. vector<double>::iterator何かを返すのは意味がありません.C++標準ライブラリは、クラスでtypedefを多用して他の型をエイリアスします

vector<double>:iteratorより正確にはエイリアスです(typedefを使用)。そして、の場合のそのエイリアスはvector<double>::iterator型へのエイリアスです。のrandom-access Iterator場合はlist<double>::iterator、型イテレータiteratorへのエイリアスです。bi-directional

これは、 typeのエイリアスであるvector<double>::size_typewhere size_typeis a type にも似ています。size_t

つまり、クラスtypedef size_t size_typeに存在しvector<double>ます。

誤解や間違いを見つけた場合は、明確にしてください。

于 2012-08-25T20:41:47.230 に答える