泛型約束的意思就是說:類的泛型,只能是where字句後面所寫的介面或類。
這麼說好像也有點不大明白,舉個例子。
我有乙個介面,如下:
複製** **如下:
////// 國籍的介面
///public inte***ce inationality
string getnationality();
}然後該介面有兩個實現,如下:
複製** **如下:
////// 中國人
///public class chinese : inationality
}public string getnationality()
} ///
/// 美國人
///public class american : inationality
}public string getnationality()
}然後建立乙個泛型類,帶有泛型約束的類,如下:
複製** **如下:
//////
//////
public class printnationality where t : inationality, new()
", item.getnationality()));
}}由於有where字句的泛型約束,所以,建立printnationality的物件時,t的型別只能是繼承子inationality介面的類。
複製** **如下:
public class program
}以上的thovlx**執行結果:
本文標題: c#中的where泛型約束介紹
本文位址:
C 中的where泛型約束
c 中的where泛型約束 這個關於泛型約束 的東西我看了幾天了。一直沒打看懂,我的領悟能力有點差,剛才突然明白了一點,泛型約束 的意思就是說 類的泛型,只能是where 字句後面所寫的介面或類。這麼說好像也有點不大明白,舉個例子。我有乙個介面,如下 1 2 國籍的介面 3 4public inte...
C 中的where泛型約束
這個關於泛型約束 的東西我看了幾天了。一直沒打看懂,我的領悟能力有點差,剛才突然明白了一點,泛型約束 的意思就是說 類的泛型,只能是where 字句後面所寫的介面或類。這麼說好像也有點不大明白,舉個例子。我有乙個介面,如下 1 2 國籍的介面 3 4public inte ce inationali...
C 泛型 WHERE 約束
where 子句用於指定對下列型別的約束 這些型別可用作泛型宣告中定義的型別形參的實參。public class mygenericclass t wheret icomparable t實現icomparable介面 public void request listentitylist where...