「{}された」とは何を意味するのでしょうか?

エヴァン:

私は時々、次のコードを参照してください、と表現が実際にテストしているものは考えています。

public static void Something(string[] value)
{
   if (value is { })
   {
      DoSomethingElse();
   }
}
ダニエルA.ホワイト:

それはない値を意味し、C#8でちょうど空のプロパティパターンですnullこれは、任意の値型または参照型と一致しました。コメントでパナギオティスKanavosノートのように、これは古き良きと同等ですvalue is object長い時間のためにC#になっているチェック。

あなたがプロパティを指定した場合、一般的に、それが一致するかではないでしょう。この難解な例があることを示しています。

if (value is { Length: 2 })
{
   // matches any object that isn't `null` and has a property set to a length of 2
}

以下のような場合には他のパターンと比較したときの特性パターンが最もよく働くと最もはっきりしているswitch表現。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=30826&siteId=1