首页 > Windows开发 > 详细

C# readonly与const的区别

时间:2019-08-27 11:05:54      阅读:88      评论:0      收藏:0      [点我收藏+]

const、readonly、static readly的区别

首先说最重要的一个区别:const的值是在编译期间确定的,因此只能在声明时通过常量表达式指定其值。而readonly是在运行时确定其值的。

我们都知道他们的一个相同点:三者所定义的常量在指定初始值后,将无法改变,只读不可写。

除此之外还有以下几点区别和要注意的地方:

1.const只能声明基元类型,枚举类型,字符串类型。readonly则无限制;
2.const天生为静态数据,无需再添加static标识;
3.cosnt较高效,readonly较灵活。在应用上以static readonly代替const,以平衡const在灵活性上的不足,同时克服编译器优化cosnt性能,所带来的程序集引用不一致问题;
4.对于一个 readonly 的 Reference 类型,只是被限定不能进行赋值(写)操作而已。而对其成员的读写仍然是不受限制的。

C# readonly与const的区别

原文:https://www.cnblogs.com/halfsaltedfish/p/11416168.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!