Rumah >pembangunan bahagian belakang >Golang >Mengapa Pergi Membenarkan Penyusunan dengan Parameter Fungsi Tidak Digunakan tetapi Pembolehubah Tidak Digunakan?

Mengapa Pergi Membenarkan Penyusunan dengan Parameter Fungsi Tidak Digunakan tetapi Pembolehubah Tidak Digunakan?

DDD
DDDasal
2024-12-29 19:31:11554semak imbas

Why Does Go Allow Compilation with Unused Function Parameters but Not Unused Variables?

Mengapa Go Membenarkan Kompilasi dengan Parameter Tidak Digunakan dalam Fungsi

Apabila beralih dari C ke Go, satu perbezaan ketara ialah Go melarang penyusunan dengan yang tidak digunakan pembolehubah dalam fungsi. Walau bagaimanapun, peraturan ini nampaknya bercanggah dengan kejayaan penyusunan kod berikut dengan parameter fungsi yang tidak digunakan:

func main() {
    print(computron(3, -3));
}

func computron(param_a int, param_b int) int {
    return 3 * param_a;
}

Walaupun tiada penjelasan rasmi, rasional yang diberikan oleh penyumbang Go mencadangkan:

  • Pencegahan ralat pengaturcaraan: Pembolehubah yang tidak digunakan sememangnya bermasalah, manakala parameter fungsi yang tidak digunakan adalah perkara biasa atas pelbagai sebab.
  • Kosongkan dokumentasi: Nama parameter yang tidak digunakan menyumbang kepada dokumentasi fungsi, walaupun ia tidak digunakan dalam kod fungsi.

Satu lagi kes penggunaan untuk parameter yang tidak digunakan adalah dalam melaksanakan antara muka. Contohnya, fungsi graf berat seragam boleh mengabaikan nilai nod:

func (graph *MyGraph) Distance(node1,node2 Node) int {
    return 1
}

Walaupun kes boleh dibuat untuk mengehadkan parameter yang tidak digunakan kepada hanya yang dinamakan sebagai "_", jaminan keserasian masa hadapan Go 1 menghalang perubahan sedemikian. Selain itu, parameter yang tidak digunakan menyediakan dokumentasi tersirat, memudahkan pemahaman dan penyelenggaraan pangkalan kod.

Ringkasnya, kekurangan sebab konkrit menunjukkan bahawa keputusan Go untuk membenarkan penyusunan dengan parameter fungsi yang tidak digunakan adalah berdasarkan alasan, walaupun sewenang-wenangnya , penilaian bahawa mereka lebih berharga daripada melarang kehadiran mereka.

Atas ialah kandungan terperinci Mengapa Pergi Membenarkan Penyusunan dengan Parameter Fungsi Tidak Digunakan tetapi Pembolehubah Tidak Digunakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn