Mengapa Kaedah Tanpa Nama Tidak Boleh Ditugaskan kepada Var
Apabila menghadapi kaedah tanpa nama seperti:
delegate(string value) { return value != "0"; }
Pengkompil ialah berhadapan dengan cabaran. Tidak seperti ungkapan lambda yang ditaip seperti:
Funccomparer = delegate(string value) { return value != "0"; };
Kaedah awanama tidak menyatakan secara eksplisit jenis perwakilan. Pengkompil mesti membuat kesimpulan jenis itu berdasarkan tandatangan kaedah. Walau bagaimanapun, terdapat jenis perwakilan berpotensi tak terhingga yang memenuhi syarat ini, dengan parameter yang berbeza-beza dan nilai pulangan.
Menyimpulkan jenis untuk kaedah tanpa nama menimbulkan beberapa isu:
Oleh itu, ralat pengkompil "Tidak boleh menetapkan kaedah tanpa nama kepada pembolehubah tempatan yang ditaip secara tersirat" menghalang penggunaan var dengan kaedah tanpa nama.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menetapkan Kaedah Tanpa Nama kepada Pembolehubah `var` dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!