这期内容当中小编将会给大家带来有关C#中泛型约束如何使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
成都创新互联专业为企业提供太平网站建设、太平做网站、太平网站设计、太平网站制作等企业网站建设、网页设计与制作、太平企业网站模板建站服务,10多年太平做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
c# where泛型约束:在定义泛型的时候,我们可以使用where限制参数的范围
1:T:类(类型参数必须是引用类型,这一点也适用于任何类,接口,委托或数组类型)
class MyClass
where T:class //约束T必须为“引用 类型{}”
where U:struct //约束U必须为“值 类型”
{
//...
}
2:T:结构(类型参数必须是值类型,可以指定除Nullable以外的任何值类型)
class MyClass
where T:class //约束T必须为“引用 类型{}“
where U:struct //约束U必须为“值类型”
3:T:new()(类型参数必须具有无参数的公共构造函数。当与其它一起使用时,new()约束必须最后指定
class EmployeeList
{...}
4:T:<基类名>(类型参数必须是指定的基类或派生自指定的基类)
class Employee()
class GenericList
5:T:<接口名称>(参数必须是指定的接口或实现指定的接口。可以指定多个接口约束。约束接口也可以是泛型)
interface IMyInterface{}
class Dictionary
where TKey:IComparable,IEnumerable
where TVal:IMyInterface
{...}
6:T:U(为T提供的类型参数必须是为U提供的参数或派生为U提供的参数,也就是说T和U的参数必须一样)
class List
{
void Add(List items) where U:T //这种where U:T泛型约束方式以前还没有看到,此处的要求就是说泛型参数U必须来自T或派生自T类型
}
a)可用于类
public class MyGenericClass
b)可用于方法
public boo MyMethod
c)可用于委托
public delegate T MyDelegate
public delegate void MyDelegate
上述就是小编为大家分享的C#中泛型约束如何使用了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。
文章名称:C#中泛型约束如何使用
转载源于:http://lswzjz.com/article/jesdhs.html