本当は最初から少しずつ勉強して行けば良いのでしょうが
とりあえず使えるようになるのが優先ですので、逆引き形式で調べて行きます
さて、イテレータを知る為の前提条件
リスト構造は前回なんとなく把握(ぉ
次は、vector,list,mapを理解しておりません
上記3つはC++の標準ライブラリーに存在します。
標準ライブラリーは、C++の便利ツールの集まりだと認識。
必要にかられて出てきた物でしょうから。使えるようになりたい物です。
vector
動的配列をテンプレートで表記したもの。2Dとか、3DのVectorでは無いようです。最初こんがらがったw
動的配列
最初にサイズのわからない配列を用意する事
テンプレート
型に依存する事の無い 関数、クラス、引数
機能を見ると
・ある程度、最初に確保
・足りなくなると新たに確保
何がどれくらい入るかわからない配列を用意したい時に使うんですな。
で、STLライブラリーに含まれるとありますが。STLって何ぞ
STL(Standard Template Library)
C++標準拡張機能のテンプレート化されたクラス群らしい。テンプレートは、型に依存する事の無いんだったよな。
コンテナ
Vector,Listなど、データ管理をするテンプレートクラスを"コンテナ"という。
"シーケンスコンテナ"
vector , list などは、連続的に並んでいるコンテナ
"連想コンテナ"
set,mapのように常にソートされているコンテナ
という・・・。
list
双方向リストを構築したテンプレートクラスお、これは先日やった、リスト構造のことっすね。
前後のポインタで次を見つけるデーター構造です。
イテレータのまとめ
と言う訳で,まだmapとか調べてないですが(wイテレータとはデーター構造の異なるコンテナを、
次々にループ、処理が出来る
言った感じですね
リストの要素は、イテレータを使わないとアクセスが出来ないみたいです
取り出したかったら、芋づる状に調べるしかないですねw
添字を使ってアクセスできるPythonのリストとは違いますなぁ〜。
と言う事で適当に調べたイテレータでした_(:p) ∠)_
0 件のコメント:
コメントを投稿