Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Soalan lazim tentang fungsi golang

Soalan lazim tentang fungsi golang

PHPz
PHPzasal
2024-04-26 17:36:011022semak imbas

Berikut ialah jawapan kepada soalan lazim tentang fungsi Golang: Fungsi tidak tergolong dalam mana-mana jenis, manakala kaedah tergolong dalam jenis tertentu. Penunjuk fungsi ialah pembolehubah yang menyimpan alamat fungsi dan boleh digunakan seperti penuding lain. Fungsi boleh mengembalikan berbilang nilai, dikembalikan sebagai tupel. Fungsi boleh mengisytiharkan senarai parameter panjang ubah menggunakan ... sintaks. Fungsi tanpa nama ialah fungsi tanpa nama yang digunakan untuk mencipta fungsi penggunaan sekali sahaja.

Soalan lazim tentang fungsi golang

Soalan Lazim berkaitan fungsi Golang

1. Perbezaan antara fungsi dan kaedah

  • Fungsi: Fungsi yang tidak tergolong dalam sebarang jenis.
  • Kaedah: fungsi kepunyaan jenis tertentu.

Contoh kod:

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

// 方法
type Person struct {
    name string
}

func (p Person) greet() string {
    return "Hello, my name is " + p.name
}

2. Penunjuk fungsi

Penunjuk fungsi ialah pembolehubah yang menyimpan alamat fungsi. Ia boleh digunakan seperti penunjuk lain untuk memanggil fungsi.

Contoh kod:

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

var addFunc = add // 函数指针

func main() {
    result := addFunc(1, 2) // 使用函数指针调用函数
    fmt.Println(result) // 输出: 3
}

3 Kembalikan berbilang nilai

Fungsi boleh menggunakan pernyataan return untuk mengembalikan berbilang nilai. Nilai pulangan dikembalikan sebagai tupel. return 语句返回多个值。返回值作为元组返回。

代码示例:

func getMinMax(nums []int) (int, int) {
    min := nums[0]
    max := nums[0]
    for _, num := range nums {
        if num < min {
            min = num
        }
        if num > max {
            max = num
        }
    }
    return min, max
}

4. 可变参数列表

函数可以用 ...

Contoh kod:

func sum(nums ...int) int {
    sum := 0
    for _, num := range nums {
        sum += num
    }
    return sum
}

func main() {
    result := sum(1, 2, 3, 4, 5) // 可变参数列表
    fmt.Println(result) // 输出: 15
}

4 Senarai parameter pembolehubah

Fungsi boleh mengisytiharkan senarai parameter panjang berubah menggunakan sintaks ....

Contoh kod:

func main() {
    // 创建匿名函数
    add := func(a, b int) int {
        return a + b
    }

    // 使用匿名函数
    result := add(1, 2)
    fmt.Println(result) // 输出: 3
}

🎜5. Fungsi tanpa nama 🎜🎜🎜Fungsi tanpa nama ialah fungsi tanpa nama. Ia biasanya digunakan untuk mencipta fungsi penggunaan sekali sahaja. 🎜🎜🎜Contoh kod: 🎜🎜rrreee

Atas ialah kandungan terperinci Soalan lazim tentang fungsi golang. 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