私は、次の使用:プライベートセッターでオブジェクトを初期化するには?
static public string myString { get; private set; }
がどのように私は同時に値を設定することができますか?問題は私のクラスは静的なので、それは宣言で、私はそれが値を持っていることを確認する必要があります。
通常は静的でないクラスで使用するので、クラスのコンストラクタで値を設定します。
私は、次の使用:プライベートセッターでオブジェクトを初期化するには?
static public string myString { get; private set; }
がどのように私は同時に値を設定することができますか?問題は私のクラスは静的なので、それは宣言で、私はそれが値を持っていることを確認する必要があります。
通常は静的でないクラスで使用するので、クラスのコンストラクタで値を設定します。
これが有効であるだけでC#6.0インチC#6.0の構文を追加します。
static public string myString { get; private set; } = "Hello";
あなたは(つまり、C#6.0の別の新機能です)、あなたのプログラム内のいくつかの後の時点でmyString
を設定するプロパティは読み取り専用にすることを検討することを計画していない限り:
static public string myString { get; } = "Hello";
ありがとうたくさん!私は私のバージョンでそれをすることができないことを知っているので、私はSergey.quixoticaxis.Ivanov答えを使用します。あなたも本当に助けています。もし私が答えることができれば、私はその両方を答えにします。 –
@MaximeJoyalあなたは心配しないでください。答えはまったく同じです。 C#6では、静的コンストラクタ内で変数を初期化するための構文ショートカットが追加されています。 –
静的コンストラクタ(MSDN)を使用してプロパティを初期化します。
あなたは静的なコンストラクタでそれを設定することができます... –