C#中,常量和只读有啥区别?

具体区别用自己话说,复制不予采纳。
2025-01-05 11:29:54
推荐回答(3个)
回答1:

常量就是一个数,如const double PI=3.14。PI只是3.14的一个代号,方便你在程序中使,同时也增加了代码的可读性。如果你在用到的PI不是3.14那么好记而是3.1415926534588这么一大串数据,而你如果不把它声明为常量。在写代码时你就得多次的输入这串数字十分繁琐又容易出错,别人看代码时看到PI很容易理解是代表什么。但是看到公式中的一大串数据,那就要骂娘了

只读变量的值也和常量一样不允许改变。但是最大的区别是只读变量它是个变量,声明它时,需要给它分配内存空间或者说是缓冲。而常量不是变量,是一个静态的值,不需要为它分配内存空间。说白了在这个程序编译时就是把PI直接看成是3.1415926534588。如果是变量,就需要到内存去取值或者把值存入内存,只是编辑器内部需要做的事情。

回答2:

常量和只读其实都是只能访问不能修改的。但是他们的赋值时机不太一样,一般常量在编译的时候已经确定并赋予其常量值。而只读其实是一个变量他在运行时需要动态装载的时候才会给他赋予一个值,而这个值一旦赋予就不能再更改了。

回答3:

常量就是系统自己定义的变量是不能修改的!也就是只读!你要说的是常量和变量的区别吧?