在C#中,readonly
關鍵字用于聲明一個變量,該變量在初始化后不能被修改。這意味著一旦為readonly
變量分配了值,它的值就不能再更改。readonly
變量可以在聲明時或在構造函數中進行初始化。
以下是readonly
變量的賦值規則:
readonly
變量時,必須在同一作用域內為其分配初始值。例如:public class MyClass
{
public readonly int MyVariable;
public MyClass(int value)
{
MyVariable = value;
}
}
在這個例子中,MyVariable
在聲明時被賦予了一個初始值。
readonly
變量也可以在構造函數中進行初始化。但是,必須在構造函數體中為其分配值。例如:public class MyClass
{
public readonly int MyVariable;
public MyClass(int value)
{
MyVariable = value;
}
}
在這個例子中,MyVariable
在構造函數中被賦予了一個初始值。
readonly
變量必須在聲明時或在構造函數中被初始化,而不能在其他方法中進行修改。例如:public class MyClass
{
public readonly int MyVariable;
public MyClass(int value)
{
MyVariable = value;
}
public void SetValue(int newValue)
{
// MyVariable = newValue; // 這將導致編譯錯誤,因為readonly變量不能被修改
}
}
在這個例子中,嘗試在SetValue
方法中修改MyVariable
的值將導致編譯錯誤。