class A<T>where T:new()是什么意思

同题,另外还有voidF3<T>(Tt)whereT:A是什么意思?那个where有什么用的?请大家帮帮忙,我刚C#入门比较的迷茫啊... 同题,另外还有void F3 <T>(T t) where T:A是什么意思?那个where有什么用的?请大家帮帮忙,我刚C#入门比较的迷茫啊 展开
 我来答
四舍五不入6
高粉答主

2019-10-05 · 还没有填写任何签名哦
四舍五不入6
采纳数:27 获赞数:71371

向TA提问 私信TA
展开全部

这是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#

chenpusn
推荐于2017-09-12 · TA获得超过128个赞
知道答主
回答量:4
采纳率:0%
帮助的人:8.5万
展开全部
where表明了对类型变量T的约束关系。where T: A表示类型变量是继承于A的,或者是A本身。where T:new()指明了创建T的实例时应该使用的构造函数。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
greystar_cn
推荐于2017-10-11 · 知道合伙人软件行家
greystar_cn
知道合伙人软件行家
采纳数:16407 获赞数:17260
本人主要从事.NET C#方向的技术开发工作,具有10多年的各类架构开发工作经验。

向TA提问 私信TA
展开全部
这是C#泛型类声明的语法
class A<T> 表示 A类接受某一种类型,泛型类型为T,需要运行时传入
where表明了对类型变量T的约束关系。where T:new()指明了创建T的实例时应该具有构造函数。一般情况下,无法创建一个泛型类型参数的实例。然而,new()约束改变了这种情况,要求类型参数必须提供一个无参数的构造函数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式