close

使用delegate關鍵字,來宣告一個函式類別:

所謂「函式類別」,又稱為「委派」,是指一專門用來儲存某個「已指定參數的函數」之型式。函式類別的宣告需利用到關鍵字delegate(其中文名稱為「委派」),宣告寫法如下:

存取修飾詞 delegate 回傳值的資料形態 委派名稱(變數型態一 參數一, 變數型態二 參數二, 變數型態三 參數三…);

接著可以宣告「委派物件」為某一個已寫好的函式,如下:

委派名稱 委派物件名稱 = 函式名稱;

注意,此函式之參數數量與參數型態必須與委派相同。

接著,我們可以直接使用該委派物件來代表該函式、執行該函式,如:

委派物件名稱(變數型態一 參數一, 變數型態二 參數二, 變數型態三 參數三…);

範例如下:

public delegate double opration(double number1, double number2);

public double get_sum(double x, double y)

{   return x + y; }

public double get_average(double x, double y)

{   return (x + y)/2; }

public Form1()

{   InitializeComponent();}

private void Form1_Load(object sender, EventArgs e)

{

    opration opration1 = get_sum;  //此行利用委派代表get_sum函式

    textBox1.Text = opration1(2, 3).ToString();  //此行利用委派執行get_sum函式

}

執行後,textBox中顯示:5

若是將上述的

opration opration1 = get_sum;

改成

opration opration1 = get_average;

則便是利用同一個委派來代表、執行get_average函式。執行後,textBox中會顯示:2.5

 

 

 

上一篇:子函式

下一篇:匿名函式

按此前往C#完整教學目錄

arrow
arrow
    創作者介紹
    創作者 埃伯 的頭像
    埃伯

    程式語言教學

    埃伯 發表在 痞客邦 留言(0) 人氣()