首页 新闻 会员 周边

c# 语法疑问

0
悬赏园豆:5 [已解决问题] 解决于 2013-02-25 22:25

int? i = new int?(1);

 

为什么可以这样写。 int都没有一个参数的构造函数??

KeVinDurant的主页 KeVinDurant | 初学一级 | 园豆:5
提问于:2013-02-24 22:39
< >
分享
最佳答案
0

int?的类型不是int,而是Nullable<int>,这个类型是有一个参数的构造函数的。

收获园豆:5
天方 | 大侠五级 |园豆:5407 | 2013-02-24 23:05
其他回答(4)
1

Int?是可为空的int

Invictus | 园豆:76 (初学一级) | 2013-02-25 08:32
0

int?类型是Nullable<int>,是一个引用类型而不是int值类型,表示一个可为空null或者整形数的变量。

RyanCheng | 园豆:474 (菜鸟二级) | 2013-02-25 09:27
0

对,我支持2要的说法,Int?是可为空的int。在EF编程中,如果属性定义a为Int时,而数据库中的数据却为null,这种情况下如果将null赋值给a时,就会发生错误。如果我们交a 定义为 int? ,那么当给a赋值为null就不会发生异常了。  int? 意思是可空整形。

jerry-Tom | 园豆:4077 (老鸟四级) | 2013-02-25 10:26
0

int?这个类型代表可以为null

dotnetgeek | 园豆:482 (菜鸟二级) | 2013-02-25 13:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册