` `` `` `Operator dalam sifat dan permulaan bidang? " /> <code class=" language-csharp>public int MaxHealth => Memory[Address].IsValid ? Memory[Address].Read<int>(Offs.Life.MaxHp) : 0; </p> <p> Atribut utama ungkapan perbandingan dan medan dengan medan medan, kita perhatikan: </p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><code class="language-csharp">public int MaxHealth { get { return Memory[Address].IsValid ? Memory[Address].Read<int>(Offs.Life.MaxHp) : 0; } }</code>
Perbezaan utama adalah cara untuk mendapatkan nilai. Atribut utama ungkapan ekspresi getter dipanggil setiap kali atribut akses diakses, dan peranti inisialisasi medan hanya diberikan sekali semasa penciptaan contoh. tidak ekspresi lambda
Harus diingat bahawa ahli utama ekspresi adalah berbeza dari ekspresi lambda. Ekspresi Lambda menjana contoh yang diamanahkan atau pokok ekspresi, dan ahli utama ungkapan ekspresi menunjukkan bahawa pengkompil dilaksanakan dengan keahlian yang sepadan.
<code class="language-csharp">// 表达式主体成员属性 public int MaxHealth => x ? y : z; // 带有字段初始化器的字段 public int MaxHealth = x ? y : z;</code>
diperluaskan ke jenis ahli lain
Ahli -ahli utama ungkapan boleh digunakan untuk pelbagai jenis keahlian, termasuk atribut, indeks, kaedah dan pengendali. Walau bagaimanapun, mereka tidak sesuai untuk jenis, peristiwa atau bidang bersarang.
Atas ialah kandungan terperinci Apakah perbezaan antara pengendali C#'=> `dalam sifat dan permulaan bidang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!