const和readonly区别?

本文详细介绍了C#编程语言中const关键字与readonly关键字的主要区别。const关键字定义的常量必须在编译时确定其值,并且一旦赋值便不可更改;而readonly关键字定义的值则可以在运行时通过构造函数进行初始化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

const:

  1、编译时赋值,不可以在运行时改变其值;

  2、常量字段自动成为静态字段,但不可以显示的声明为static;

readonly:

  1、可以在执行时赋值,但只能在构造函数中改变其值;

  2、只能用于字段,不能用于局部变量里;

  3、可以声明为static的;

  4、将readonly应用于数组,不会冻结数组的内容,只会冻结数组中元素的个数;

    因为无法将只读字段重新赋值为一个新的实例;

   public readonly string[] arr =new string[] { "1", "2" };

   //构造函数
        public Program()
        {
            this.arr = new string[] { "3", "4" };            
        }

转载于:https://www.cnblogs.com/xia_mi/archive/2011/05/27/2059592.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值