我有90%的把握确定我以前在stackoverflow上看到过这个答案,实际上我从未见过“ int?”。语法在这里看到之前,但无论如何搜索,我都找不到上一篇文章,这使我发疯。
我可能是偶然地吃了有趣的蘑菇,但是如果我没有吃,那么有人可以指出或重新解释它吗?我的stackoverflow search-fu显然太低了。
Answers:
诠释?是可空的。
MSDN:使用可空类型(C#编程指南)
int属于System.ValueType,并且不能具有null作为值。在处理元素可以具有null值的数据库或其他类型时,检查元素是否为null可能很有用。那是什么时候int?发挥作用。诠释?是可为null的类型,其值范围为-2147483648至2147483648,并且为null。
如果期望整数中的值为空,则可以使用它,尤其是在使用CASTING ex时:
x= (int)y;
如果y = null,则将出现错误。您必须使用:
x = (int?)y;
Int不能接受null,但如果开发人员正在使用int?然后将int储存为int,例如int i = null; //不接受int吗?i =空;//它的工作方式主要用于MVC页面列表中的分页