1

次のようなプロパティにセッターがあります。

set
{
string whatever = regex.replace();

_fieldStub = whatever;

}

ご覧のとおり、value キーワードは使用されていません。これはまだ完全に有効な set ブロックですか?

ありがとう

4

3 に答える 3

5

これはまだ完全に有効な set ブロックですか?

はい、技術的には有効なプロパティ セッターです。渡された値を使用する必要はありません。

ただし、このプロパティは非常に珍しいものである可能性が高く、予想されるすべての動作に違反します。そのため、代わりにこれをメソッドにすることをお勧めします。

于 2012-10-22T21:05:43.233 に答える
0

コンパイラには有効ですが、.Net 言語のスコープでは意味がありません。.Net プロパティではなく、メソッドのように動作します

public string MyProperty
{
  set
  {
   string whatever = regex.replace();

   _fieldStub = whatever;

  }
}

これは私の財産に何の影響も与えません

myClass.MyProperty = "Hello"; //has no effect and makes no sense
于 2012-10-22T21:18:20.947 に答える
0

それはコンパイルしますか?
ある場合 -
有効です。そうでない場合 - 有効ではありません。
コードの検証では、最後の単語はコンパイラに属します。

于 2012-10-22T21:07:40.893 に答える