《C#高效编程》读书笔记02-用运行时常量(readonly)而不是编译期常量(const)

C#有两种类型的常量:编译期常量运行时常量。两者有截然不同的行为,使用不当的话,会造成性能问题,如果没法确定,则使用慢点,但能保证正确的运行时常量
运行时常量使用readonly关键字声明,编译期常量则使用const关键字声明:

//声明编译期常量
public const int Millennium = 2000;
//声明运行时常量
public static readonly int ThisYear = 2017;

二者最重要的区别在于,readonly值是运行时解析的,而const是在生成IL码就已经确定。

const声明的常量必须不能改变,若改变了,则需要重新编译所有引用的程序集。

posted @ 2017-04-26 10:22  爱幻想の宅  阅读(460)  评论(0编辑  收藏  举报