0

この単純な質問が私を悩ませているのは久しぶりです。プロパティを宣言する 2 つの形式を見てきましたが、何が違うのか疑問に思っていました。

第1形態:

public int Age { get; set; }

第二形態:

private int _Age;
public int Age
{
    get { return _Age; }
    set { _Age = value; }
}

私は常に 2 番目の形式を使用してきましたが、このMSDN チュートリアルでも 2 番目の形式について説明しているだけなので、ここで少し混乱しています。どちらが好ましいのでしょうか?

4

4 に答える 4

1

それは本当に好みの問題です。最初の形式は単なるシンタックス シュガーであり、コンパイラが 2 番目の形式を生成します。操作や評価を行わない場合は、最初の形式の方が短くて整頓されているため、最初の形式を使用することを好みます。しかし、他の人が指摘しているように、C# 3 より前に実行している場合は、2 番目の形式を実行するしかありません。

于 2013-05-14T22:37:10.293 に答える
1

プロパティで追加の処理やアクセス制御を行っていない場合は、最初の方法で問題ありません。これは、C# 3 で導入された、より簡単な方法です。

こちらをご覧ください。

于 2013-05-14T22:31:01.523 に答える
1

フィールド自体に何もしない、つまり値を格納するだけのダムクラスがある場合にのみ、最初の形式を使用します。

したがって、ほとんどの場合、2 番目の形式を使用します。これにより、外部 (クラス) のコンシューマー向けの getter/setter に検証ロジックを追加できますが、クラス内部のメソッドからフィールドにアクセスする場合、多くの検証が多くの場合単純なクローズド エコシステムであると考えられます。プロセッサー・サイクルの無駄。

于 2013-05-14T22:45:55.527 に答える