こんにちは。田原です。 難しい話が続いたので、ちょっと気楽にfor文について解説します。C++ではC言語にはなかった「イテレータ」が追加されました。そして、C++11ではコードがスッキリして可読性が上がる範囲ベースforを使えるようになりました。今回はこれらの使い方だけでなく仕組みについても解説します。 1.イテレータの使い方 各種のコンテナに保存されている要素を枚挙するために設計されたクラスがイテレータです。使い方はポインタによく似せられていますが、実体はクラスです。(各コンテナの内部で定義されています。) 1-1.ポインタによる記述 例えば、std::vectorの内容をポインタで枚挙する時は次のように書くことができます。(終了判定は違和感があるかも知れませんね。) #include <iostream> #include <vector> int main() { std::vect
![実践C++入門講座 第31回目 イテレータの仕組みと範囲ベースforの仕組み | Theolizer®](https://cdn-ak-scissors.b.st-hatena.com/image/square/cf9f1f700e6adf36c2e221e49946ebc300ec375d/height=288;version=1;width=512/https%3A%2F%2Ftheolizer.com%2Fwordpress%2Fwp-content%2Fuploads%2F2017%2F07%2Fschool1-31-1024x1024.jpg)