関数のラムダ式
VisualStudio2015で追加されたのC#6.0 で関数のラムダ式を試してみました。
public Int32 Add(Int32 val1, Int32 val2) => val1 * val2;
この使い道が想像できていません。関数をラムダ式で書く理由って何でしょうか?
ちなみに私は、ラムダ式を書くのに波括弧を使う癖があるのですが、
関数のラムダ式に入れたら、コンパイラ様に怒られました。
public Int32 Add2(Int32 val1, Int32 val2) => { return val1* val2; }
Error CS1519 クラス、構造体、またはインターフェイス メンバーの宣言でトークン '{' が無効です。
関数がラムダ式なら、Funcに入れられるかと思い、入れてみました。
ついでに、普通の関数もFuncに入れてみました。
public Int32 Add(Int32 val1, Int32 val2) => val1 * val2;
public Int32 Add2(Int32 val1, Int32 val2) { return val1 * val2; }
void SampleMethod()
{
Func<Int32, Int32, Int32> func = Add;
Func<Int32, Int32, Int32> func2 = Add2;
}
な、なんと、どちらも普通に動きます。
さぁ、やっぱり、使い道が分からなくなってきました。
誰か、使い方教えてけれ!!!!!!!!!!!!!!
0 件のコメント:
コメントを投稿