C# – 細かく「delegate」Part.6

今回で細かく「delegate」は終わりです。

delegateとは

結局、デリゲートはメソッドを表す型で、定義した型にメソッドを「代入をする」もしくは「代入をしてもらう」ことで、代入されたメソッドの本体を呼び出すことが出来る。それ以上でもなく、それ以下でもない。

ただこの性質を利用すると、プログラミングする上でコードが綺麗になったりコーディングが楽になることは多分にある。

具体的な利用する場面・用途についてはまた追々記事にすることにして、今回細かくdelegateを見てきたが、delegateの本質は
「そこにメソッドの本文を記載しないこと」
「だがメソッドを呼び出すことが出来ること」
といった曖昧さにあると思う。

この曖昧さをコードに残したまま、しかし機能するものが作れる。
使い方次第でコーディングに要する時間が大きく変化する機能だろう。

まとめ

  • delegate(デリゲート)とはメソッドを表すための型である。
  • 定義した型で変数を宣言でき、「=」や「+=」でメソッドを代入できる。
  • 変数を利用すると代入したメソッドを呼び出すことができる。その変数を他のメソッドの引数や戻り値として渡すこともできる。
  • 呼び出すメソッドは非同期に呼び出すこともできる。
  • 実際には汎用デリゲートを用いると定義不要で読みやすくなる。

参考:
山田祥寛(2017) 『独習C# 新版』翔泳社.
.NET API Browser,<https://docs.microsoft.com/en-us/dotnet/api/>

カテゴリーC#

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です