国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

C#中委托的基本用法總結

2020-01-26 15:47:45
字體:
來源:轉載
供稿:網友

原則:

1、委托本質就是個指針,一個函數指針,拿到函數的首地址即可;

C#的委托加了安全性,體現在對于函數指針所引用的函數指令塊的類型檢測,比如返回值,參數類型,參數個數

而C中的函數指針被賦值的時候(在C#中,就是委托實例化的時候,因為C#中后臺將委托處理成一個類了,封裝了哈)被賦予的值是否滿足類型的種種條件(返回值,參數類型,參數個數)不做檢查,由用戶給出保證,C#會編譯提示出來

2、委托實例化的過程,也就是委托對象構造的過程,從底層來講,即將一個現存的函數代碼指令塊的內存地址(靜態函數,實例的非靜態成員函數都行)賦值給這個委托;這個賦值過程,就是委托的構造函數要做的事情,所以,委托的構造函數一定有一個參數,這個參數在后臺讓系統處理,就是滿足類型檢查的函數指針,所要檢查的類型(返回值,參數類型,參數個數)都是在聲明定義委托的時候給出的。

3、委托實例化的兩種方法:

1) A a = new A(靜態方法名/實例.方法名);

2) A a = 靜態方法名/實例.方法名;

委托調用的兩種方法:

1)a.Invoke()

2)a()

用來構造委托的方法可以是靜態方法,也可以是實例化對象的成員函數,本質是這段代碼指令已經編譯出來,分配了內存了,傳遞給委托的參數(本質就是這塊指令數據的首地址)是有效的有意義的,從這個角度來理解,自然靜態方法,實例方法都能用來構造、建立委托實例的了

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 内江市| 论坛| 屏东县| 枞阳县| 芷江| 玛纳斯县| 福贡县| 故城县| 武安市| 涿鹿县| 沁水县| 黑河市| 筠连县| 塔河县| 荥经县| 铜川市| 承德县| 时尚| 晋城| 清涧县| 安平县| 喀什市| 科技| 慈利县| 滨海县| 九龙坡区| 浑源县| 甘肃省| 万载县| 肇源县| 文山县| 铜鼓县| 五家渠市| 江安县| 扬中市| 谢通门县| 长治县| 九寨沟县| 边坝县| 上犹县| 澜沧|