首页 新闻 搜索 专区 学院

谁能看看这小段代码是什么意思,这样写的作用?

0
悬赏园豆:5 [已解决问题] 解决于 2014-01-09 21:22

 internal static T FromData<T>(InputDataDetailInfo info)
            where T : InputDataDetailModel, new()
        {

        }

C#
hslgmq的主页 hslgmq | 初学一级 | 园豆:45
提问于:2014-01-09 16:02
< >
分享
最佳答案
0

internal static T FromData<T>(InputDataDetailInfo info)
            where T : InputDataDetailModel, new()
        {

        }

1、internal限制了只能在程序集中调用。

2、where T:InputDataDetailModel 就是T类型要继承InputDataDetailModel

3、Where T: new()   new 约束要求用作类型实参的类型必须带有公共无参构造器。这里只有带有公共无参构造器的类型才能用作T。并且如果同时存在其他约束,那么new约束应该是最后一个。

收获园豆:5
aehyok | 小虾三级 |园豆:1012 | 2014-01-09 18:11

能给个简单的示例吗兄台?

hslgmq | 园豆:45 (初学一级) | 2014-01-10 09:24
其他回答(2)
0

类型T必须继承自InputDataDetailModel或InputDataDetailModel类型本身,new()它要求类型实参必须提供一个无参数的构造函数

这样做是为了类型的安全行考虑

http://www.cnblogs.com/smiler/p/3168725.html

http://www.cnblogs.com/smiler/p/3163312.html,这是我的博客,有相关介绍

幕三少 | 园豆:1374 (小虾三级) | 2014-01-09 16:14
0

泛型约束,子类必须有一个构造函数

飞翔的歌谣 | 园豆:202 (菜鸟二级) | 2014-01-09 17:15
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册