` c#expression-bodiedメンバーの意味は? " />
次のコードに遭遇した場合:
これはラムダの発現ではなく、表現のメンバーであることを理解することが重要です。
<code class="language-csharp">public int MaxHealth => Memory[Address].IsValid ? Memory[Address].Read<int>(Offs.Life.MaxHp) : 0;</code>式のメンバー
コンパイラが式本文のメンバーに遭遇すると、ゲッターに変換されます:
初期化デバイスを備えた式ボディとフィールドのメンバー式の式と初期化デバイスを使用したフィールドの違いは、次の内容を比較することで説明できます。<code class="language-csharp">public int MaxHealth { get { return Memory[Address].IsValid ? Memory[Address].Read<int>(Offs.Life.MaxHp) : 0; } }</code>
式の式は、属性にアクセスするたびにそれを呼び出すゲッターです。一方、インスタンス化されたときにフィールドは1回初期化されます。 文法キャンディー
式のメンバーは純粋な文法砂糖であり、既存の関数以外に追加の機能はありません。次のコンテンツに、メンバーを属性するよりシンプルな構文を提供します。
<code class="language-csharp">// 表达式体成员属性 public int MaxHealth => x ? y : z;</code>
<code class="language-csharp">// 带有字段初始化器的字段 public int MaxHealth = x ? y : z;</code>return statement(非表示の返品式)
文ブロックなし(本体は単一の式です)
キーワードを「取得」する必要はありません(式の表現の文法に隠されています)
追加の説明
以上がc#expression-bodiedメンバーの `=>`とはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。