泛型聽起來很高深的乙個詞,但實際上它的作用很簡單,就是提高c#程式的效能。
比如在計算機中經常用到一些資料結構,如佇列,鍊錶等,而其中的元素以前一般這麼定義:object a=new object();就是加了個限定這樣就帶來乙個嚴重的問題,用object來表示元素沒有邏輯問題,但每次拆箱、封箱就占用了大量的計算機資源,導致程式效能低下,而這部分內容恰恰一般都是程式的核心部分,如果使用object,那麼程式的表現就比較糟糕。
而使用泛型則很好的解決這個問題,本質就是在編譯階段就告訴編譯器,資料結構中元素的種類,既然編譯器知道了元素的種類,自然就避免了拆箱、封箱的操作,從而顯著提高c#程式的效能。
比如list就直接使用string物件作為list的元素,而避免使用object物件帶來的封箱、
拆箱操作,從而提高程式效能。
可以自己編個小例子體驗一下在使用資料結構時的情形,自然就理解了。
泛型 什麼是泛型
泛型 即通過引數化型別來實現在同乙份 上操作多種資料型別。泛型程式設計是一種程式設計正規化,它利用 引數化型別 將型別抽象化,從而實現更為靈活的復用。c 泛型的作用概述 c 泛型賦予了 更強的型別安全,更好的復用,更高的效率,更清晰的約束。在乙個方法中,乙個變數的值是可以作為引數,但其實這個變數的型...
泛型 為什麼是泛型?
需求 先需編寫乙個程式,用棧 stack 進行進棧和出棧操作,並對棧中的元素進行運算。方案一 假設元素為int型別,則可使用 code class stack public void push int x public int pop 客戶 code class test 然而,現在需求發生變化。客...
什麼是泛型
分類 泛型 c 應用 2009 02 25 10 04 550人閱讀收藏 舉報 前言 net 2.0中泛型的出現是乙個令人激動的特徵。但是,什麼是泛型?你需要它們嗎?你會在自己的應用軟體中使用它們?在本文中,我們將回答這些問題並細緻地分析泛型的使用,能力及其侷限性。型別安全 net中的許多語言如c ...