您的位置:首页 > 其它

建议6 区别readonly和const的使用方法

2017-05-03 23:42 288 查看
区别
const是一个编译期常量,readonly是一个运行时常量。
const只能修饰基元类型,枚举类型和字符串类型,readonly没有限制。

const变量的效率高,是因为经过编译器编译后,我们在代码中引用const变量的地方都会用const变量所对应的实际值来代替
const int ConstValue=100;// const 默认是静态的
Console.WriteLine(ConstValue); //IL代码是Console.WriteLine(100);


readonly赋值行为发生在运行时,它在运行时第一次被赋值后将不可以改变。
readonly另一个灵活之处在于可以为每个实例指定不同的值:
Sample s1=new Sample(100);
Sample s2=new Sample(200);
Sample s3=new Sample(300);

public class Sample
{
public readonly int ReadOnlyValue;
public Sample(int value)
{
ReadOnlyValue=value;
}
}


总结
readonly 操作灵活。
const 效率高
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: