VisualC++ 2010 beta ではラムダ式が使えます。 無名の関数を inline で宣言することが可能で、関数オブジェクトのように 取り扱いできます。 ・Download Visual Studio 2010 Beta ・Examples of Lambda Expressions 変数で受け取る場合は auto や template を使った汎用の入れ物が必要です。 auto f0= []( int x, int y ){ return x * y; }; std::tr1::function f1= f0; lambda 式は無名の型宣言に相当するので、同等の型を明示的に宣言することが できません。 名前をつけるだけなら下記の定義は出来ますが、これも f0 が有効な範囲のみです。 typedef decltype(f0) lambda_type2; lambda_type2