C#におけるイベントの理解

3771 ワード

C#におけるイベントの理解
まず、イベントは特殊な依頼であることを知っておく必要があります.C#で依頼された定義はC++の関数ポインタに似ていますが、C#依頼は安全です.イベントはパブリケーション-サブスクリプションモードを使用します.イベントをパブリッシュするには、イベントの宣言とイベントをトリガーするコードが必要です.
イベントのdemoについて
  • まず依頼
  • を宣言する
  • は、その後、この依頼によってイベント
  • を宣言する.
  • トリガイベントを記述する関数
  • 実行するメソッドをイベントに登録します.メソッド署名と定義された委任タイプが同じであることに注意してください.
  • public class MyEvent
    {
         
       public delegate void NumHandler();//    
       public event NumHandler numEvent;//    
       //      
       public void numChange()
       {
         
           if (numEvent != null)
               numEvent();
       }
    }
    
    class Program
    {
         
       static void Main(string[] args)
       {
         
           MyEvent myEvent = new MyEvent();
           myEvent.numEvent += () =>//       ,           
           {
         
               Console.WriteLine("hello myevent!");
           };
           myEvent.numChange();
       }
    }