静的変数は、すべてのクラス オブジェクトに対して 1 つのコピーであり、クラスのオブジェクトがなくてもアクセスできる変数です。
しかし、オブジェクトごとに個別の変数が必要で、コンストラクターで初期化したいと考えています。
静的変数は、すべてのクラス オブジェクトに対して 1 つのコピーであり、クラスのオブジェクトがなくてもアクセスできる変数です。
しかし、オブジェクトごとに個別の変数が必要で、コンストラクターで初期化したいと考えています。
EDIT:以下のコメントのように、探しているのはreadonly
変数です:
class MyClass {
readonly int myInteger;
public MyClass() {
myInteger = 10; // works
}
public void DoSomething() {
myInteger = 5; // not allowed
}
}
static
ではなく、変数について話しているようですconstant
。次のようにしてください:
class MyClass {
static int myInteger;
public void DoSomething() {
myInteger = 5; // is now changed for all instances
}
}