auto型
概要
実際は auto 型という型はない。
型を書くのが面倒な場合に、コンピューターに「型書かなくてもわかるでしょ?」と押し付けるための型。
イテレータなど一部の型は、型宣言が長くて非常に面倒くさい。
そこで、型宣言をコンピュータに任せるということができる。
もちろん、コンピュータが十分に型を判断できるような状況を用意しなければならない。
それに失敗すると、意図したものとは異なる型と判断されてバグが発生する可能性もある。
そのため、使うのはイテレータと構造化束縛くらいにとどめておいた方が無難。
宣言と初期化
イテレータの型宣言
auto a = vec.begin();
もちろん型を真面目に書いてもいいが……。
構造化束縛での宣言
auto [a,b] = p;
この例では p は pair 型を想定している。
可能な演算
実際の型による。
よく使う処理
実際の型による。
注意点
概要のところを参照。