泛型之关键字default、where

①:default

      在泛型中,要为某个使用泛型的变量初始化值,可是我们需要考虑的是这个泛型可能是引用类型,也可能是值类型,这时我们可以借助default来完成初始化复制。T value = default(T);如果T是引用类型,value = null,如果是T是值类型,value = 0.

②:where

                                       约束                                                                  说明

                                where T:struct                                     使用结构约束,类型T必须是值类型

                                where T:calss                                       类约束指定,类型T必须是引用类型

                                where T:IFoo                                            指定类型T必须执行结构IFoo

                                where T:Foo                                            指定类型T必须派生于基类Foo

                               where T:new()                                       指定类型T必须有一个默认构造函数 

                                 where T:U                                          类型T派生于泛型类型V(裸类型约束)

   (注:在CRL2.0中,只能为默认构造函数定义约束,不能为其他构造函数定义约束)

转载于:https://www.cnblogs.com/wangyong/archive/2010/01/23/1654639.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值