c# const readonly
时间: 2023-10-28 19:24:38 浏览: 157
C#基础:基于const与readonly的深入研究
在 C# 中,有两种用于声明常量的关键字:`const` 和 `readonly`。这两个关键字的作用相似,都是用来创建不可修改的常量。然而,它们之间有一些重要的区别。
使用 `const` 关键字声明的常量必须在声明时进行初始化,并且不能在程序运行过程中更改其值。这意味着 `const` 常量的值在编译时就确定了,并且在运行时是不可变的。例如:
```csharp
public const int MyConstant = 10;
```
另一方面,使用 `readonly` 关键字声明的常量可以在构造函数中进行初始化,并且可以在运行时更改其值。这意味着 `readonly` 常量的值是在运行时确定的,但只能在构造函数或初始化器中进行更改。例如:
```csharp
public readonly int MyReadOnlyConstant;
public MyClass()
{
MyReadOnlyConstant = 20;
}
```
总结来说,`const` 常量是编译时常量,其值在编译时确定;而 `readonly` 常量是运行时常量,其值在运行时确定,并且可以在构造函数中进行初始化和更改。
阅读全文