架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 9883|回复: 1

[交流] 【吐槽】c# 3.0 get set 默认值

[复制链接]
发表于 2016-12-26 15:16:18 | 显示全部楼层 |阅读模式
文章:http://blog.csdn.net/scauscnu/article/details/13621137
这就不得不说 { get; set; } 的默认值了,因为不存在了私有自段,我们无法人工指定默认值了,那么系统的默认值是什么呢?

对于 int 类型,默认值是 0;
对于 int? 类型,默认值是 null;
对于 bool 类型,默认值是 false;
对于 bool? 类型,默认值是 null;
对于 string 类型,默认值是 null;
对于 string? 类型,哈哈,没有这种写法,会出错;
对于 DateTime 类型,默认值是 0001-01-01 00:00:00;
对于 DateTime? 类型,默认值是 null;
对于 enum 类型,默认值是值为 0 的项,如果不存在 0 的 enum 项,它仍然是 0,相关内容可参见:C# 枚举(enum);
对于 enum? 类型,默认值是 null;
对于 class 类型,默认值是未实例化的对象引用;
对于 class? 类型,哈哈,没有这种写法,会出错。
关于类型加 ?,表示这种类型的值可为 null,比如 int 本来没有 null 值,加上 int? 就可以为 null 了。




我们直接仿造去写,

QQ截图20161226151354.jpg

直接抛异常了:Process is terminated due to StackOverflowException.

这种文章,自己实践都不实践,真是误导人!!!






上一篇:支付宝AR实景红包漏洞破解,抢VR红包
下一篇:任务里面不是有掌上论坛吗?在哪里下载?找不到!!!
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2016-12-26 15:23:26 | 显示全部楼层
正确的赋默认值的方法:

QQ截图20161226152258.jpg



码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-20 20:03

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表