14882
[可変長テンプレートの展開と引数の評価順序についての疑問。](https://ja.stackoverflow.com/questions/14699/%E5%8F%AF%E5%A4%89%E9%95%B7%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%81%AE%E5%B1%95%E9%96%8B%E3%81%A8%E5%BC%95%E6%95%B0%E3%81%AE%E8%A9%95%E4%BE%A1%E9%A0%86%E5%BA%8F%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%81%AE%E7%96%91%E5%95%8F)  
上の質問で

```

     for(auto& i : v)
    
```

といった書き方を見たのですが、

```

     for(i=0;i<n;i++)
    
```

のような書き方しか知りません。上の書き方はどのような入門書または、中級上級まとめて専門書を読んだらいいのですか  
それと、コンパイラにオプションとかは必要になりますか
CC BY-SA 3.0
2015-08-26T13:59:49.020
14876
2015-08-26T15:42:38.517
2017-04-13T12:52:39.113
-1
11041
question
c++ c++11
C++の入門書は読んだのですがfor文の書き方を知りません
C++11で導入されたようです。なので古いC++の入門書には無いと思います。

参照URL  
<http://minus9d.hatenablog.com/entry/20130815/1376557665>
CC BY-SA 3.0
2015-08-26T14:01:58.830
14878
2015-08-26T14:01:58.830
845
14876
answer
新しい規格[C++11](https://ja.wikipedia.org/wiki/C%2B%2B11)で導入された書き方です。  
書籍では、「[プログラミング言語C++第4版](http://www.amazon.co.jp/gp/product/4797375957)」や「[改訂新版
C++ポケットリファレンス](http://www.amazon.co.jp/gp/product/4774174084)」がC++11に対応していますが、前者は非常に高価な書籍です。  
Webでは、「["C++11"
範囲for](https://www.google.co.jp/?gws_rd=ssl#q=%22C%2B%2B11%22+%E7%AF%84%E5%9B%B2for)」や「["C++11"
auto](https://www.google.co.jp/?gws_rd=ssl#q=%22C%2B%2B11%22+auto)」等で検索すればヒットします。

GCCやClangの場合は、バージョンによってはオプションとして「-std=c++11」の指定が必要です。  
Visual
C++の場合は、オプションの指定は不要ですが、「[コンパイラの実装状況](http://cpprefjp.github.io/implementation-
status.html)」等を参考にしてC++11の範囲forとautoに対応したバージョンをお使いください。
CC BY-SA 3.0
2015-08-26T15:17:53.720
14882
2015-08-26T15:42:38.517
2015-08-26T15:42:38.517
7831
7291
14876
answer