C#中的拜托應用。本站提示廣大學習愛好者:(C#中的拜托應用)文章只能為提供參考,不一定能成為您想要的結果。以下是C#中的拜托應用正文
從明天開端寫關於C#的系列文章,本篇文章重要講授C#中的拜托應用。
拜托其實就是一種數據類型,和int,string是一樣的概念。
假如要把一個字符串賦值給一個變量,用string聲明一個變量便可。假如要把一個辦法賦值給一個變量,那末用甚麼症結字呢?固然就是用拜托了,所以用拜托聲明的變量便可以接收一個辦法了,以後誰人變量便可以像辦法一樣履行。
上面開端具體引見:
先看一段代碼:
static void Main(string[] args) { int i; //可以接收一個整數的變量 string str; //可以接收一個字符串的變量 }
在Main辦法內聲清楚明了2個變量:i和str。年夜家都很熟習的代碼,變量i注解它可以接收一個整數,變量str注解它可以接收一個字符串。
那末假如我想聲明一個變量既可以接收整數又可以接收字符串,那該用甚麼數據類型來聲明如許的變量呢?
謎底很簡略:用class。
public class MyClass { public int i { get; set; } //接收整數 public string str { get; set; } //接收字符串 }
那末我們就創立了一種數據類型:MyClass,用它聲明的變量可以同時接收一個整數和一個字符串。
以下:
static void Main(string[] args) { MyClass obj = new MyClass(); obj.i =1; obj.str ="我是字符串"; }
如今成績來了:我想要一種數據類型可以聲明一個變量用於接收一個辦法。
既然這類數據類型要接收一個辦法,那我們先看看辦法長甚麼樣:
public string Method(int m,int n) { return ""; }
下面的Method辦法最重要的特色就是這個辦法的輸出參數數據類型與輸入的數據類型。
平日我們會挪用各類辦法,挪用辦法前我們會肯定辦法的輸出參數的數據類型和辦法輸入的數據類型,至於辦法的主體我們平日不關懷,辦法的主體由辦法編程人員去完成便可。
所以我們編寫一個辦法,挪用一個辦法前都要明白的辦法的輸出輸入數據類型。
關於下面Method辦法的輸出數據類型為2個整數,輸入的是一個字符串。
如今我們要聲明一個變量來接收這個辦法,那末這個變量的數據類型也應當要明白輸出,輸入的數據類型。那末我們應當界說相符誰人辦法輸出與輸入分歧的數據類型。
public class Test { //這類數據類型可以接收一個辦法 public delegate string MethodDelegate(int i1,int i2); }
好了,我曾經聲清楚明了和下面Method辦法一樣的輸出與輸入類型的一個數據類型了:MethodDelegate。
那末我們便可以用這個數據類型來接收Mehtod辦法了,完全代碼以下:
class Program { //這類數據類型可以接收一個辦法 public delegate string MethodDelegate(int i1, int i2); /// <summary> /// 我們可以用MethodDelegate聲明一個變量來接收辦法了 /// </summary> public void Test() { MethodDelegate IamMethod = Method; //把上面誰人Method辦法賦值給變量了。 var result=IamMethod(1, 2); //然後把這個變量看成辦法一樣履行便可。 } public string Method(int m, int n) { return ""; } }
在下面第4行:我們用delegate症結字聲清楚明了一種數據類型:這類數據類型和我們想要接收甚麼樣辦法的輸出輸入類型堅持分歧便可以了。
那末下面的MethodDelegate便可以接收帶2個int類型的輸出參數而且前往類型是string的任何辦法了。
如今我們發明拜托和int,string是一樣的概念,只不外,int用來接收整數,string用來接收字符串,delegate用來聲明一種數據類型接收辦法。