Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Tandatangan fungsi dan inferens jenis dalam bahasa Go

Tandatangan fungsi dan inferens jenis dalam bahasa Go

王林
王林asal
2023-06-02 08:12:211149semak imbas

1. Tandatangan Fungsi

Fungsi ialah cara penting untuk merangkum kod dalam pengaturcaraan menyediakan cara untuk merangkum blok kod dan menggunakannya semula apabila diperlukan. Dalam Go, fungsi ialah nilai kelas pertama, dan ia boleh dihantar kepada dan dikembalikan daripada fungsi sama seperti jenis nilai lain.

Tandatangan fungsi menerangkan input dan output fungsi, termasuk bilangan parameter, jenis dan jenis nilai pulangan. Sintaks tandatangan fungsi dalam bahasa Go adalah seperti berikut:

func functionName(parameter1 type1, parameter2 type2) (returnType1, returnType2) {
    // 函数体
}

di mana, functionName ialah nama fungsi, parameter1, parameter2, dsb. ialah parameter fungsi dan jenis ialah type1, type2 dsb., dipisahkan dengan koma. Fungsi boleh mempunyai berbilang parameter, tetapi jenis setiap parameter mesti ditentukan.

Apabila fungsi mengembalikan berbilang nilai, jenis nilai pulangan juga mesti dipisahkan dengan koma. Jika fungsi hanya mengembalikan nilai, jenis pulangan boleh ditinggalkan.

Sebagai contoh, kod berikut mentakrifkan fungsi bernama add yang menerima dua parameter a dan b serta mengembalikan jumlahnya:

func add(a int, b int) int {
    return a + b
}

2. Taipkan inferens

Dalam bahasa Go, pengisytiharan berubah boleh menggunakan := untuk inferens jenis, yang boleh menjadikan pengaturcaraan lebih ringkas.

Sebagai contoh, kod berikut menunjukkan cara untuk mengisytiharkan dan memulakan pembolehubah integer x:

x := 10

Dalam contoh ini, kami tidak menyatakan jenis x. Pengkompil Go secara automatik akan membuat kesimpulan bahawa jenis x ialah int berdasarkan jenis ungkapan di sebelah kanan. Oleh itu, menggunakan inferens jenis boleh menghilangkan pernyataan pengisytiharan jenis pembolehubah, menjadikan kod lebih ringkas.

Dalam panggilan fungsi, inferens jenis boleh menjadikan parameter fungsi lebih ringkas. Contohnya, kod berikut menunjukkan cara menggunakan inferens jenis untuk memanggil fungsi add:

sum := add(3, 5)

Memandangkan jenis parameter fungsi add sudah ditentukan sebagai taip int dalam tandatangan fungsi , tidak perlu mengisytiharkannya lagi Jenis parameter. Pengkompil secara automatik boleh membuat kesimpulan jenis parameter berdasarkan nilai yang dibekalkan.

Ringkasan:

Tandatangan fungsi dan inferens jenis ialah dua ciri penting bahasa Go. Tandatangan fungsi menerangkan input dan output fungsi, yang menyediakan cara berstruktur untuk kod, menjadikan kod lebih mudah difahami dan diselenggara. Inferens jenis boleh menghilangkan pengisytiharan jenis pembolehubah atau parameter fungsi, menjadikan kod lebih ringkas. Dengan pemahaman yang mendalam tentang tandatangan fungsi dan inferens jenis, anda boleh menjadi lebih mahir dalam menulis kod dalam bahasa Go.

Atas ialah kandungan terperinci Tandatangan fungsi dan inferens jenis dalam bahasa Go. 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