C 高階 通過類來理解學習委託

2022-01-23 14:29:46 字數 876 閱讀 4601

namespace

classanddelegate

static

void

mymethod()

}//////

delegate 就是一種型別 定義了乙個無參無返回值的委託,委託會對應具體的型別

/// public

delegate

void

mydelegate();

//////

宣告了乙個型別

/// class

test

}

view code

委託是一種型別,應該說是函式指標,可以用來傳遞方法的,可以用乙個變數來接收方法,這個就是委託。因為委託可以接收方法,所以說定義委託的時候就應該要規定方法的返回值和引數,這樣就會限定你所定義的這個委託就只能接收這個方法。這裡也體現它是安全的,不是隨意指向的。

(一)為什麼要有委託呢

委託的作用:委託是一種資料型別,這種資料型別的變數可以賦值乙個方法,也就是說我們可以在a方法的引數裡面(設定乙個delegate變數),就可以把方法作為引數進行傳遞了。這樣做的好處就是:一般來講,我們的方法呼叫的話,都會有侷限於某乙個域中。如果有了委託,方法就不在侷限於某個域中,而是在任何地方都可以隨便呼叫。

當你定義乙個委託的時候,要嚴格按照將來儲存什麼方法來定義。

委託使用步驟

1、定義乙個委託

2、宣告乙個委託變數,委託變數也是乙個引用型別。

委託之所以說是安全的,

是因為定義委託的時候是這樣的 public deleagate int method(

類的定義是由關鍵字class 定義乙個類 class 類名 

委託的定義是由關鍵字delegate  delegate 委託名稱,

C 學習 委託的理解

1.委託的概念 委託 delegate 是一種儲存函式引用的資料型別。委託是用返回型別和引數列表定義的變數。給定的委託型別可以匹配返回型別和引數與委託定義相同的函式。委託可以近似理解為函式指標,即可以實現把方法當作引數進行傳遞。1.1 委託的定義 委託的定義和函式類似,但是不帶函式體,並且必須使用d...

C 學習 類的高階應用

class news class sportnews news 1 c 只允許的單一繼承,即乙個派生類只能有乙個基類。2 執行流程 先基類後派生。3 關鍵字base,可以訪問基類成員和基類建構函式 1 類的多型主要表現在方法的多型性。2 類方法的三種多型形式 1 定義同名但引數列表不同的方法,為方法...

c 類的學習及理解

class a a是類的名字,相當於乙個自製資料型別 可以內聯,即上面直接在類定義中定義 還可以在內部宣告,外部定義,形式如下 double a getdoublenum void 其中 為範圍解析運算子 4.呼叫 舉例說明 a a1 double te 0.0 a1.num 10 te a1.ge...