デリゲート・・・匿名メソッド/ラムダ式

Contents

序文

共通で使用される関数内で展開されるデリゲート関数があったとします。(イメージで表現)

この共通部分()関数で呼び出される、A(),B(),C()関数は利用されるだけで、使い捨ての関数とはなりません。。。

使い捨ての関数が出た場合に使用するのが、「匿名メソッド/ラムダ式」です。

匿名メソッドは名前を持たないメソッドです。delegateを使いますが、最終的にはラムダ式を使う事になるそうです。

構文delegate

delegate(引数の型 引数) {

メソッドの本体 ();};

構文ラムダ式・・・delegateの代わりに、=>(アロー演算子)を使用します。

(引数の型 引数) => {

メソッドの本体(); };

以下、考え方とサンプルです。

フォームを用意してボタンを張り付けます。

ボタンを押下した時の処理を記述すると、その様にうごきます。

この動きは押下した時に利用されるだけで、使い捨てです。

また、この処理の記述はボタンをダブルクリックして、自動生成してから書く事が多いと思います。匿名メソッド/ラムダ式ではダブルクリックしないで作ります。

匿名メソッドでの記述

ボタン定義と共に、処理を記述する方法の一つとして、匿名メソッドがあります。

匿名=メソッド名無しで、メソッドの中身を記述しておきます。

ラムダ式での記述

delegateと省略できる(類推できる)型も不要となりました。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする