C# 類型參數(shù)

2018-01-16 02:50 更新

C#類型參數(shù)

類型參數(shù)可以在類,結(jié)構(gòu),接口,委托和方法的聲明中引入。

其他構(gòu)造(如屬性)不能引入類型參數(shù),但可以使用一個(gè)。

例子

例如,屬性Value使用T:

public struct Nullable<T> {
    public T Value { 
       get; 
    } 
} 

多個(gè)參數(shù)

泛型類型或方法可以有多個(gè)參數(shù)。

例如:

class Dictionary<TKey, TValue> {...} 

實(shí)例化:

Dictionary<int,string> myDic = new Dictionary<int,string>(); 

或者:

var myDic = new Dictionary<int,string>(); 

泛型類型名稱和方法名稱可以重載,只要類型參數(shù)的數(shù)量不同。

例如,以下兩種類型名稱不沖突:

class A<T> {} 
class A<T1,T2> {} 

默認(rèn)通用值

默認(rèn)關(guān)鍵字可用于獲取給定通用類型參數(shù)的默認(rèn)值。

引用類型的默認(rèn)值為null,值類型的默認(rèn)值為按值類型的字段進(jìn)行按位置零的結(jié)果:

static void MyMethod<T> (T[] array) { 
    for (int i = 0; i < array.Length; i++) {
       array[i] = default(T); 
    }
} 


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)