型推論とラムダ式

R.Tanaka.Ichiro's Blog - 暗黙的型付け


C#では型推論とラムダ式が受け入れられるにはちょっと時間がかかるだろう


でも、C++では導入されたらすんなり受け入れられるとこが多いと思う


C++では型推論とラムダ式を喉から手が出るほど欲しがってるひとがとても多い


導入に関しても、仕事でC++使ってるひとは
「そんなの難しいから使うな」
とか言われ慣れてるので、使いどころはしっかり考えるはず
(難しい処理はライブラリコードに書くとか、チーム内で使うリファレンス作るとか)

...乱用されないようにルールを決める必要はあるが


さすがにfor文書くたびにこんなコード書いてられないし(仕事では今現在書いてる)

for (vector<T>::iterator it = v.begin(); it != v.end(); ++it)
    ...


たった1行の処理のために関数作ってられない(今現在作ってる)

void disp(int value)
{
    cout << value << endl;
}

for_each(v.begin(), v.end(), disp);

だからこう書けたら幸せになれるひとはとても多い

for (auto it = v.begin(); it != v.end(); ++it)
    ...

// 実際は↑よりも↓を使うだろうけど
for (int value : v)
    ...


for_each(v.begin(), v.end(), cout << _1 << endl);

C++では型推論とラムダ式はすごくほしい