我明白,我們可以使用auto
像:auto有什麼用途?
auto a = 1;
auto b = Foo(1,2);
或者在函數調用:
auto foo(){
return Foo(1,2);
}
但C++ 11還提供了統一的初始化和初始化列表,所以我們可以這樣做:
Foo a {1,2};
Foo b = {1,2};
Foo foo(){
return {1,2};
}
那麼如果我們已經有大括號語法,auto
的用法是什麼? (除了定義一個原始類型)
微不足道的例子:'auto it = v.beg in()'其中'v'是推導的上下文中的某個類型爲'T'的容器。 – juanchopanza
看看[草藥薩特的「AAA風格」文章](http://herbsutter.com/2013/08/12/gotw-94-solution-aaa-style-almost-always-auto/)。 – Casey
使用'auto'推斷函數的返回類型是C++ 1y特性。在C++ 11中,只有尾隨返回類型'auto foo() - > Foo;'功能(以及簡單lambda表達式的返回類型推導)。 – dyp