日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
詳解C# 泛型約束中的引用/值類型約束

C# 泛型約束中的引用/值類型約束使用 C# 泛型,編譯器會將一般代碼編譯為 IL,而不管客戶端將使用什么樣的類型實(shí)參。因此,一般代碼可以嘗試使用與客戶端使用的特定類型實(shí)參不兼容的一般類型參數(shù)的方法、屬性或成員。這是不可接受的,因?yàn)樗喈?dāng)于缺少類型安全。在 C# 中,您需要通知編譯器客戶端指定的類型必須遵守哪些約束,以便使它們能夠取代一般類型參數(shù)而得到使用。存在三個類型的約束。派生約束指示編譯器一般類型參數(shù)派生自諸如接口或特定基類之類的基類型。默認(rèn)構(gòu)造函數(shù)約束指示編譯器一般類型參數(shù)公開了默認(rèn)的公共構(gòu)造函數(shù)(不帶任何參數(shù)的公共構(gòu)造函數(shù))。

創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比興縣網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式興縣網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋興縣地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴。

C# 泛型約束之引用/值類型約束將一般類型參數(shù)約束為引用類型或值類型。一般類型可以利用多個約束,您甚至可以在使用一般類型參數(shù)時使 IntelliSense 反射這些約束,例如,建議基類型中的方法或成員。

C# 泛型約束之引用/值類型約束的理解和應(yīng)用:

可以使用 struct 約束將一般類型參數(shù)約束為值類型(例如,int、bool 和 enum),或任何自定義結(jié)構(gòu):

 
 
 
  1. public class MyClass where T : struct   
  2.  
  3. {...} 

同樣,可以使用 class 約束將一般類型參數(shù)約束為引用類型(類):

 
 
 
  1. public class MyClass where T : class   
  2.  
  3. {...} 

不能將引用/值類型約束與基類約束一起使用,因?yàn)榛惣s束涉及到類。同樣,不能使用結(jié)構(gòu)和默認(rèn)引用/值類型約束,因?yàn)槟J(rèn)引用/值類型約束也涉及到類。雖然您可以使用類和默認(rèn)引用/值類型約束,但這樣做沒有任何價值。可以將引用/值類型約束與接口約束組合起來,前提是引用/值類型約束出現(xiàn)在約束列表的開頭。

C# 泛型約束中的引用/值類型約束相關(guān)的內(nèi)容就向你介紹到這里,希望對你了解和學(xué)習(xí)C# 泛型約束中的引用/值類型約束有所幫助。

【編輯推薦】

  1. C# 泛型實(shí)現(xiàn)理解及實(shí)例淺析
  2. C# 泛型應(yīng)用及優(yōu)點(diǎn)淺析
  3. 淺析C# 泛型約束中的一般約束
  4. C# 泛型約束之派生約束淺析
  5. 淺析C# 泛型約束中的構(gòu)造函數(shù)約束

網(wǎng)站名稱:詳解C# 泛型約束中的引用/值類型約束
路徑分享:http://www.dlmjj.cn/article/coeghhd.html