class A<T>where T:new()是什么意思
这是C#泛型类声明的语法
class A<T> 表示 A类接受某一种类型,泛型类型为T,需要运行时传入。
where表明了对类型变量T的约束关系。
where T:new()指明了创建T的实例时应该具有构造函数。
一般情况下,无法创建一个泛型类型参数的实例。然而,new()约束改变了这种情况,要求类型参数必须提供一个无参数的构造函数。
扩展资料:
C#中其他字符的意义:
params:声明一个参数数组。如果使用,必须修改指定的最后一个参数,允许可选参数。
readonly:标识一个变量的值在初始化后不可修改。
ref:标识一个参数值可能会受影响的参数。
sealed:防止类型被派生,防止方法和property被覆载。
sizeof:一个操作符,以byte为单位返回一个值类型的长度。
stackalloc:返回在堆上分配的一个内存块的指针。
struct:是一种值类型,可以声明常量、字段、方法、property、索引器、操作符、构造器和内嵌类型。
throw:抛出一个异常。
try:异常处理代码块的组成部分之一。try代码块包括可能会,抛出异常的代码。参阅catch和finally关键字。
typeof:一个操作符,返回传入参数的类型。
unchecked:禁止溢出检查。
unsafe:标注包含指针操作的代码块、方法或类。
参考资料来源:百度百科-c#
推荐于2017-10-11 · 知道合伙人软件行家
class A<T> 表示 A类接受某一种类型,泛型类型为T,需要运行时传入
where表明了对类型变量T的约束关系。where T:new()指明了创建T的实例时应该具有构造函数。一般情况下,无法创建一个泛型类型参数的实例。然而,new()约束改变了这种情况,要求类型参数必须提供一个无参数的构造函数。