推論型(auto)
C++は変数の型は明示的にしてはっきりさせなければならないが、テンプレート型などを利用すると複雑になってしまう。それを簡単に書くために推論型が追加された。
下記の例ではイテレータをautoを利用して簡潔な記述になっている。
[auto.cpp]
- #include <iostream>
- #include <vector>
- //推論型のテスト
- int main() {
- using namespace std;
- vector<int> nums;
- nums.push_back(10);
- nums.push_back(20);
- nums.push_back(30);
- nums.push_back(40);
- nums.push_back(50);
- //before C++
- //vector<int>::iterator it = nums.begin();
- auto it = nums.begin();
- while(it != nums.end()) {
- cout << *it << endl;
- ++it;
- }
- return 0;
- }
でコンパイル出来れば成功です。