freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

csharp規(guī)范20版(參考版)

2024-08-25 15:28本頁面
  

【正文】 這些類型形參可以在形參列表、返回類型和方法體內(nèi)使用。為了將其用于任何 StackT,必須將該方法編寫為一個(gè)泛型方法 (generic method)。 PushMultiple(stack, 1, 2, 3, 4)。對(duì)于特定的構(gòu)造 類型,例如 Stackint,該方法如下所示: void PushMultiple(Stackint stack, params int[] values) { foreach (int value in values) (value)。通常,在創(chuàng)建采用泛型類型作為形參的方法時(shí)會(huì)遇到這種情況。但是,即使在某些情形下 Sort 方法根本沒有被調(diào)用,也會(huì)由于上述約束的存在而導(dǎo)致未實(shí)現(xiàn) IComparable 的類型無法使用 ListT。雖然它們提供更強(qiáng)的編譯時(shí)類型檢查 , 并在某些情況下改進(jìn)了性能 , 但是它們也使泛型類型的使用受到限制。在下面的示例中,類型形參 K 具有兩個(gè)接口約束,而類型形參 E 具有一個(gè)類類型約束和一個(gè)構(gòu)造函數(shù)約束: public class EntityTableK,E where K: IComparableK, IPersistable where E: Entity, new() { public void Add(K key, E entity) { ... if ((x) 0) {...} ... } } 在上面示例中 , 構(gòu)造函數(shù)約束 new() 確保用作 E 的類型實(shí)參的類型具有無參數(shù)的公共構(gòu)造函數(shù) , 這樣 , 泛型類便可以使用 new E() 創(chuàng)建該類型的實(shí)例。 5 對(duì)于一個(gè)給定的類型形參 , 作為約束的接口和類型形參的數(shù)目不受限制 , 但只能有一個(gè)類。 版權(quán)所有 ? Microsoft Corporation 19992020。 第 錯(cuò)誤 !使用“開始”選項(xiàng)卡將 Heading 1 應(yīng)用于要在此處顯示的文字。 為了讓 DictionaryK,V 類能夠確保鍵總是實(shí)現(xiàn) IComparable, 可在類聲明中為類型形參 K 指定一個(gè)約束 , 如下所示 : public class DictionaryK,V where K: IComparable { public void Add(K key, V value) { ... if ((x) 0) {...} ... } } 有了這個(gè)聲明后 , 編譯器將確保為 K 提供的任何類型實(shí)參均為一個(gè)實(shí)現(xiàn)了 IComparable 的類型。類型形參約束指定了一個(gè)要求,類型必須滿足該要求才能用作該類型形參的實(shí)參。另外它還將錯(cuò)誤報(bào)告推遲到運(yùn)行時(shí),當(dāng)鍵未實(shí)現(xiàn) IComparable 時(shí)引發(fā) InvalidCastException。當(dāng)然,我們可以將 key 參數(shù)強(qiáng)制轉(zhuǎn)換為含有 CompareTo 方法的類型。泛型類常常需要調(diào)用對(duì)象上的方法,對(duì)象的類型由類型形參給出。 保留所有權(quán)利。而對(duì)于所有的引用類型,則共享該本機(jī)代碼的單個(gè)副本(因?yàn)樵诒緳C(jī)代碼級(jí)別,引用不過是具有相同表示形式的 指針)。從泛型類型創(chuàng)建特定構(gòu)造類型的過程稱為泛型類型實(shí)例化 (generic type instantiation)。 在應(yīng)用程序第一次創(chuàng)建構(gòu)造泛型類型 ( 例如 Stackint) 的實(shí)例時(shí) , .NET 公共語言運(yùn)行庫的實(shí)時(shí) (JIT) 編譯器將泛型 IL 和元數(shù)據(jù)轉(zhuǎn)換為本機(jī)代碼 , 并在該過程中將類型形參替換為實(shí)際類型。 泛型類型實(shí)例化 與非泛型類型類似 , 泛型類型的編 譯表示形式也是中間語言 (IL) 指令和元數(shù)據(jù)。 (Peter, new Customer())。 // Type mismatch error 泛型類型聲明可以含有任意數(shù)目的類型形參。 (3)。 (new Customer())。 泛型提供了強(qiáng)類型機(jī)制 , 這意味著如果將一個(gè) int 值推入 Customer 對(duì)象的堆棧將導(dǎo)致錯(cuò)誤。如果將其他類型的值推入堆棧則產(chǎn)生編譯時(shí)錯(cuò)誤。無疑,這比非泛型的 Stack 提供了更高的存儲(chǔ)效率。在 Stackint 類型中 , 出現(xiàn)的每個(gè) T 都被替換為類型實(shí)參 int。 int x = ()。在下面的示例中,指定了 int 作為 T 的類型實(shí)參 (type argument): Stackint stack = new Stackint()。 保留所有權(quán)利。 章 錯(cuò)誤 !使用“開始”選項(xiàng)卡將 Heading 1 應(yīng)用于要在此處顯示的文字。 int count。類型形參 T 只起占位符的作用,直到在使 用時(shí)為其指定了實(shí)際類型。StackT 的實(shí)例的類型由創(chuàng)建時(shí)所指定的類型確定,該實(shí)例將存儲(chǔ)該類型的數(shù)據(jù)而不進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換。下面的示例聲明一個(gè)帶有類型形參 T 的泛型 Stack 類。有了泛型,我們便可以做到這一點(diǎn)。這個(gè)問題在該代碼被執(zhí)行之前不會(huì)暴露出來,但在執(zhí)行該代碼時(shí)會(huì)引發(fā) InvalidCastException。 string s = (string)()。實(shí)際上,可能會(huì)發(fā)生這種情況:將一個(gè) Customer 實(shí)例推入堆棧,而在檢索到該實(shí)例之后卻意外地將它強(qiáng)制轉(zhuǎn)換為錯(cuò)誤的類型: Stack stack = new Stack()。 這樣的裝箱和取消裝箱操作由于涉及動(dòng)態(tài)內(nèi)存分配和運(yùn)行時(shí)類型檢查而額外增加了性能開銷。 (3)。 再比如 , 當(dāng)我們將一個(gè)值類型 ( 例如 int) 的值傳遞給 Push 方法時(shí) , 則該值將自動(dòng)被裝箱。 (new Customer())。例如,我們可以將任何類型的值(例如一個(gè) Customer 實(shí)例)推入堆棧。 int count。 保留所有權(quán)利。 為什么要使用泛型? 如果沒有泛型 , 通用數(shù)據(jù)結(jié)構(gòu)可通過使用類型 object 實(shí)現(xiàn)任何數(shù)據(jù)類型的存儲(chǔ)。 有關(guān) C 語言的最新信息以及如何為本文檔提供反饋意見的說明 , 請(qǐng)?jiān)L問 “ C 語言主頁 ”( 泛型 泛型可以讓類、結(jié)構(gòu)、接口、委托和方法按它們存儲(chǔ)和操作的數(shù)據(jù)的類型進(jìn)行參數(shù)化。例如,盡管 C 在某些上下文中為單詞 where、 yield 和 partial 提供了特殊含義,但是這些單詞仍可用作標(biāo)識(shí)符。最后一章介紹 C 中引入的一些次要的擴(kuò)展。 本章將簡(jiǎn)要介紹這些新功能。任何值類型均可作為可空類型的基礎(chǔ)類型。 ? 可空類型表示可能未知的值。 ? 分部類型允許將類、結(jié)構(gòu)和接口劃分為多個(gè)部分,存儲(chǔ)在不同的源文件中,以便于開發(fā)和維護(hù)。 ? 迭代器是執(zhí)行遞增計(jì)算并產(chǎn)生一系列值的方法。匿名方法類似于 Lisp 編程語言中的 lambda 函數(shù)。泛型很有用,因?yàn)樗鼈兡芴峁└鼜?qiáng)的編譯時(shí)類型檢查,減少數(shù)據(jù)類型之間的顯式轉(zhuǎn)換,以及裝箱操作和運(yùn)行時(shí)的類型檢查。 1 19. C 簡(jiǎn)介 C 引入了幾項(xiàng)語言擴(kuò)展 , 其中包括泛型 (Generic)、匿名方法 (Anonymous Method)、迭代器 (Iterator)、分部類型 (Partial Type) 和可空類型 (Nullable Type)。 版權(quán)所有 ? Microsoft Corporation 19992020。 運(yùn)算符重載解析 .......................................................................................................................91 相等操作符和空 .......................................................................................................................91 is 運(yùn)算符 ..................................................................................................................................91 as 運(yùn)算符 ..................................................................................................................................92 復(fù)合賦值 ..................................................................................................................................92 bool? 類型 ................................................................................................................................92 空合并運(yùn)算符 ...........................................................................................................................93 25. 其他功能 ............................................................................................................................................ 95 屬性訪問器的可訪問性 ................................................................................................................. 95 訪問器聲明 ..............................................................................................................................95 訪問器的使用 ...........................................................................................................................96 重寫和接口實(shí)現(xiàn) .......................................................................................................................97 靜態(tài)類 ........................................................................................................................................... 97 靜態(tài)類聲明 ..............................................................................................................................97 引用靜態(tài)類類型 .......................................................................................................................98 命名空間別名限定符 ..................................................................................................................... 98 限定的別名成員 ..................................................................................................................... 100 別名的唯一性 ......................................................................................................................... 101 Extern 別名 ................................................................................................................................... 102 Extern 別名指令 ..................................................................................
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1