Delegasikan Kata Kunci lwn. Notasi Lambda
Dalam C#, soalan biasa timbul berkenaan persamaan dua ungkapan lambda:
<code class="csharp">delegate { x = 0; } () = > { x = 0 }</code>
Adakah fungsinya serupa setelah disusun?
Jawapan:
Ringkasnya, tidak. Mereka adalah setara dari segi sintaksis, tetapi berbeza dalam jenis perwakilan yang terhasil.
Menyelidiki Lebih Dalam:
Sementara kata kunci perwakilan secara tradisinya mencipta perwakilan tanpa nama, menggunakan lambda dengan kata kunci perwakilan menghasilkan perwakilan tanpa nama juga. Walau bagaimanapun, memberikan lambda kepada jenis Ungkapan akan menghasilkan pepohon ungkapan, yang kemudiannya boleh disusun kepada perwakilan tanpa nama.
Pertimbangan Lanjutan:
Pilihan antara tatatanda ini bergantung pada penggunaan yang dimaksudkan:
Atas ialah kandungan terperinci Adakah kata kunci perwakilan dan notasi lambda berfungsi sama dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!