Heim > Backend-Entwicklung > Golang > Die Prinzipien und Anwendungen von Golang-Funktionszeigern

Die Prinzipien und Anwendungen von Golang-Funktionszeigern

PHPz
Freigeben: 2024-04-29 11:15:01
Original
997 Leute haben es durchsucht

Funktionszeiger in Go ermöglichen das Speichern von Funktionen als Werte. Zu den Erstellungsmethoden gehören die direkte Zuweisung und die Verwendung des Schlüsselworts func. Wird über den ()-Operator aufgerufen. Praktisches Anwendungsbeispiel: Berechnen Sie die Summe ungerader Elemente in einem Array und übergeben Sie die Beurteilungsfunktion für ungerade Zahlen über einen Funktionszeiger.

Die Prinzipien und Anwendungen von Golang-Funktionszeigern

Prinzipien und Anwendungen von Funktionszeigern in der Go-Sprache

Prinzipien von Funktionszeigern

In der Go-Sprache ist eine Funktion ein Wert, der mithilfe von Variablen gespeichert werden kann. Ein Funktionszeiger ist eine Variable, die auf eine Funktion zeigt. Es wird durch das Präfix * dargestellt und die Syntax lautet wie folgt: * 前缀表示,语法如下:

type FuncType func(args) (returns)
var funcPtr *FuncType
Nach dem Login kopieren

创建函数指针

函数指针可以通过以下几种方式创建:

  1. 直接赋值:

    var add = func(a, b int) int {
        return a + b
    }
    var addPtr = &add
    Nach dem Login kopieren
  2. 使用 func 关键字:

    var addPtr = func(a, b int) int {
        return a + b
    }
    Nach dem Login kopieren

调用函数指针

要调用函数指针,需要使用 ()

result := (*addPtr)(1, 2)  // 等于 add(1, 2)
Nach dem Login kopieren

Erstellen Sie einen Funktionszeiger.

Funktionszeiger können auf folgende Weise erstellt werden:

  1. Direkte Zuweisung:

    package main
    
    import "fmt"
    
    // 奇数函数
    func isOdd(x int) bool {
        return x%2 != 0
    }
    
    // 计算奇数和
    func sumOdds(arr []int, odd func(int) bool) int {
        sum := 0
        for _, v := range arr {
            if odd(v) {
                sum += v
            }
        }
        return sum
    }
    
    func main() {
        arr := []int{1, 2, 3, 4, 5, 6, 7}
        total := sumOdds(arr, isOdd)
        fmt.Println("奇数元素的和:", total)
    }
    Nach dem Login kopieren
    < /li>
  2. 🎜Verwenden Sie func Schlüsselwort: 🎜🎜
    奇数元素的和: 16
    Nach dem Login kopieren
    🎜Funktionszeiger aufrufen🎜🎜Um den Funktionszeiger aufzurufen, benötigen Sie um den Operator () zu verwenden, wie unten gezeigt: 🎜rrreee🎜Praktischer Fall: 🎜🎜🎜Berechnen Sie die Summe ungerader Elemente in einem Array🎜🎜rrreee🎜Ausgabe: 🎜rrreee

    Das obige ist der detaillierte Inhalt vonDie Prinzipien und Anwendungen von Golang-Funktionszeigern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage