「auto」の版間の差分
提供: C++入門
(→関連項目) |
|||
行62: | 行62: | ||
* [[C++11]] | * [[C++11]] | ||
* [[for]] | * [[for]] | ||
+ | * [[std::for_each]] | ||
* [[BOOST_FOREACH]] | * [[BOOST_FOREACH]] | ||
<!-- | <!-- | ||
vim: filetype=mediawiki | vim: filetype=mediawiki | ||
--> | --> |
2013年12月27日 (金) 01:02時点における版
auto とは、C++11で追加された型推論です。
読み方
- auto
概要
これは、イテレータの例です。ループを書くために、たくさん書かないといけません。
std::vector<int> v; for(std::vector<int>::iterator it = v.begin(); it != v.end(); ++it) { ; }
autoキーワードを使うこと、簡単に書けます。
std::vector<int> v; for(auto it = v.begin(); it != v.end(); ++it) { ; }
autoを用いたループの例
auto は、C++11 で追加されました。
ソースコード auto1.cpp
このプログラムは、std::vector の内容をfor文で表示するだけの例です。
#include <iostream> #include <vector> using namespace std; int main(int argc, char const* argv[]) { std::vector<int> v; v.push_back (1); v.push_back (2); v.push_back (3); for (auto x: v) { cout << x << endl; } return 0; }
コンパイル
clang++ -std=c++11 auto1.cpp -o auto1
実行例
% ./auto1 1 2 3