Heim  >  Artikel  >  Backend-Entwicklung  >  Was sind generische Delegaten in C#?

Was sind generische Delegaten in C#?

WBOY
WBOYnach vorne
2023-08-26 13:49:05703Durchsuche

C# 中的泛型委托是什么?

Mit generischen Delegaten müssen Sie keine Delegatenanweisungen definieren. Sie werden im Systemnamensraum definiert.

Sie können generische Delegaten mithilfe von Typparametern definieren. Zum Beispiel -

delegate T myDelegete<T>(T n);

Beispiel

Das folgende Beispiel zeigt, wie man einen generischen Delegaten in C# erstellt -

using System;
using System.Collections.Generic;

delegate T myDelegete<T>(T n);
namespace GenericDelegateAppl {
   class TestDelegate {
      static int num = 5;

      public static int AddNum(int p) {
         num += p;
         return num;
      }

      public static int MultNum(int q) {
         num *= q;
         return num;
      }

      public static int getNum() {
         return num;
      }

      static void Main(string[] args) {
         //create delegate instances
         NumberChanger nc1 = new NumberChanger(AddNum);
         NumberChanger nc2 = new NumberChanger(MultNum);

         //calling the methods using the delegate objects
         nc1(50);
         Console.WriteLine("Value of Num: {0}", getNum());

         nc2(10);
         Console.WriteLine("Value of Num: {0}", getNum());
         Console.ReadKey();
      }
   }
}

Das obige ist der detaillierte Inhalt vonWas sind generische Delegaten in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
Vorheriger Artikel:Reflexion in C#Nächster Artikel:Reflexion in C#