これまで、STLマップのすべてのキーを次のようにトラバースするためにイテレータを常に使用してきました。
for (std::map<char,int>::iterator it=mymap.begin(); it!=mymap.end(); ++it){
std::cout << it->first << " => " << it->second << '\n';
}
ごく最近、以下に示すように、キーを反復処理するために異なるスタイルを使用するコードに出くわしました。この機能は、改訂された標準で最近追加されたばかりですか?他の多くの言語がすでに提供しているように、より少ないコードでより多くのことを成し遂げるのはかなり興味深い方法のようです。
for (auto& x: mymap) {
std::cout << x.first << " => " << x.second << '\n';
}
また、ここでキーワード「auto」を使用することの正確な意味を知りたいと思います。