精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C#中的兩個泛型修飾符

麥辣雞腿堡 ? 來源:CSDN博客 ? 作者:mykge ? 2023-01-14 11:48 ? 次閱讀

C#中,存在兩個泛型修飾符:in和out,他們分別對應逆變委托和協變委托。

我們知道,在C#中要想將一個泛型對象轉換為另一個泛型對象時,必須要將一個泛型對象拆箱,對元素進行顯式或隱式轉換后重新裝箱。

例如:

Listlobject=new List(){"0","1","2"};
List lint=new List();
foreach(Object obj in lobject)
{
lint.Add((int)obj);
}
在這個拆箱和裝箱的過程中,要消耗掉相當于lobject對象兩倍的內存和資源,如果lobject對象非常大,這將是非常巨大的資源消耗。泛型修飾符就是用來解決這個問題的。
當兩個泛型對象的元素存在繼承關系是,可以在實現泛型對象是為泛型元素增加in或者out聲明,以便逆變或協變。

逆變泛型:
ListIn:IList
ListInlobject = new ListIn(){"0","1","2"};
ListIn lint=new ListIn;
lint = lobject;
協變泛型:
ListOut:IList
ListOut lint=new ListOut(){0,1,2};
ListOutlobject=new ListOut();
lobject=lint;

原文鏈接:https://blog.csdn.net/mykge/article/details/42918841

編輯:何安

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7575

    瀏覽量

    134017
  • 編程語言
    +關注

    關注

    10

    文章

    1916

    瀏覽量

    34369
收藏 人收藏

    評論

    相關推薦

    C#操作AP

    。Static修飾符則聲明一靜態元素,而這個元素屬于類型本身而不是上面指定的對象。extern則表示這個方法將在工程外部執行,使用DllImport導入的方法必須使用extern修飾符
    發表于 12-26 12:23

    Python與C#對比

    生命周期可以分為編譯時、鏈接時、加載時、運行時,這4階段。在Python,這4階段是一體的,而在C#卻是嚴格分離的,在
    發表于 05-14 17:14

    “無注冊”修飾符如何防止變量被保存到CPU寄存器?

    好的,我的意思是,我希望真正的內存位置(無論是全局的還是本地的,不是基于堆棧的,變量)都要更新,所以當中斷發生時,它會找到一更新的值。我知道“寄存器”修飾符,但它正好相反。F我想做什么,我在文檔
    發表于 10-09 11:09

    請問C++代碼的修飾符該怎么理解?

    有如下的代碼段,寫出下面除了宏定義外的其他代碼的真實代碼(即預處理后的代碼)。然后寫出對const的修飾符的理解(當前的代碼用于單片機):#define DECL_PC_CMD_FUN(name
    發表于 11-11 04:35

    請問什么是正則表達式修飾符?

    什么是正則表達式的修飾符?
    發表于 11-04 06:10

    labview連接mongdb問題,找到不.NET類

    有沒有人用labview連接mongodb數據庫的?已下載mongodb的c#驅動,利用labview的.net控件調用相關函數,但是驅動中有部分函數在
    發表于 04-08 13:38

    HAL庫__weak修飾符是什么?

    單片機系統時鐘是什么?HAL庫__weak修飾符是什么?
    發表于 02-23 07:32

    C語言類型修飾符Const的教程使用說明

    Const也是應該廣泛的關鍵字,表示后面定義有可能是一不變的常量,但是跟各種數據類型定義組合,能演變出復雜含義。常類型是指使用類型修飾符const說明的類型,常類型的變量或對象的值是不能被更新
    的頭像 發表于 09-20 09:37 ?3011次閱讀

    C語言類型修飾符Volatile的使用說明

    C語言是我們經常需要用到的語言,C語言中的類型修飾符Volatile大家知道怎么使用嗎? volatile是一類型修飾符(type spe
    的頭像 發表于 09-19 10:54 ?3457次閱讀

    C51單片機中斷函數的修飾方法

    C51斷函數必須通過該修飾符進行修飾。在C51程序設計,當函數定義時用了interruptm
    發表于 03-18 14:20 ?2556次閱讀
    <b class='flag-5'>C</b>51單片機中斷函數的<b class='flag-5'>修飾</b>方法

    一種修飾符能使變量在處理器復位而不被初始化

    有一種修飾符能使變量在處理器復位而不被初始化
    的頭像 發表于 03-14 15:01 ?3843次閱讀
    一種<b class='flag-5'>修飾符</b>能使變量在處理器復位而不被初始化

    Vue入門之事件操作

    事件修飾符 vue 通過事件修飾符對js事件進行細節控制。
    的頭像 發表于 02-06 16:26 ?628次閱讀
    Vue入門之事件操作

    Java四種訪問修飾符及訪問范圍

    public修飾的類、類屬變量及方法,包內及包外的任何類均可以訪問;任何情況下都可以訪問;如果一類、類屬變量及方法沒有用任何修飾符,則其訪問權限為默認權限,只認包。同包下可以訪問,同包下子類可以訪問,只要不同包,普通類和子類都
    的頭像 發表于 02-28 14:35 ?6403次閱讀

    java內部類可以用public修飾

    使用任意訪問權限修飾符,包括public、protected、默認和private。 方法內部類只能使用默認訪問權限,即不加任何訪問修飾符。 使用public修飾的內部類 內部類使用public
    的頭像 發表于 11-21 10:23 ?847次閱讀

    淺析C語言中的變量修飾符

    一、修飾符類型51單片機采用哈佛結構。內存空間編址有重疊??梢栽诓煌偩€上定義不同的變量。在KEILC51定義了data、idata、xdata、code幾種域修飾符。這些修飾符決定
    的頭像 發表于 04-15 08:10 ?333次閱讀
    淺析<b class='flag-5'>C</b>語言中的變量<b class='flag-5'>修飾符</b>