unity勉強日記プログラミング素人、ブルーノの自主勉強ノートです。他のプログラミングを勉強したい方の助けになれば幸いです。昨日朝ごはんを食べた瞬間に胸が苦しくなって病院に担ぎ込まれたブルーノです。結局原因は不明だそうですがいまだに深く息を吸い込むと胸が痛くなります。肋間神経痛かもしれません。ご飯はゆっくり食べる事にします😅さて今回は匿名メソッドとラムダ式というものについてまとめていきます匿名メソッド前回はすでにあるメソッドをデリゲートを通して実行し、いちいちインスタンス化→実行という手間をかけない方法についてやりましたが、今度の匿名メソッドはメソッドをあらかじめ定義しておく必要も無くなってしまいます。下の図を見てください7~11行目のShowメソッドは入力された文字列をそのまま返すシンプルなものです。22行目でこのメソッドのデリゲートを作成し、次の行で呼び出しています。ここまでは従来のデリゲートと同じです。その次の25行目で少し従来のものと違った宣言の仕方をしているものがありますね。実はここにメソッドの中身を書き込むようになっていて、デリゲートの宣言と中身をここでいっぺんにできてしまうのです。メソッドの名前を書き込まずにデリゲートの宣言だけでメソッドを作ることができるので、匿名のメソッドというわけですね!実行結果は見て分かるように両者に差はありません。次に、この匿名メソッドをさらに簡略化できてしまうラムダ式についてまとめます。先ほどの匿名メソッドの他にデリゲートを簡略化する方法として、ラムダ式というものが存在します。下の画像を見てください。メインメソッドの中の14行目が通常の呼び出し、16~17行目がラムダ式による呼び出しになっています。}のなかで呼び出すメソッドを指定しています。いう矢印みたいなものをラムダ演算子と言います。矢印の手前の()にはデリゲートへの引数が入ります。今回は引数は指定していないので空白ですね。}のように直接メソッドの内容を書き込むこともできます。するとまるで匿名メソッドのようですね。さっきの4行程の匿名メソッドの記入がラムダ式なら1行で終わってしまいました。こっちの方が楽ですよね。実際C#の開発者の方も「ラムダ式が先に導入されていれば匿名メソッドはいらなかった」と発言しているそうです(笑)。マルチキャストデリゲーションについては以下の通りです。今回はここまでにしておきます。ラムダ式があれば簡単なメソッドならいちいち定義せずに実行できてしまいそうですね。デリゲートの引数やデータ型の関係で似たようなメソッドしか定義できませんが便利そうです。ヶ月)プログラミングド素人、ブルーノの勉強報告、兼好きなゲームの雑談のブログです。(4)はてなブログをはじめよう!covory10101101276さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。