Wie kann ich den Namen einer Funktion mithilfe von Reflection in Go abrufen?

DDD
Freigeben: 2024-11-09 19:44:02
Original
578 Leute haben es durchsucht

How Can I Retrieve a Function's Name Using Reflection in Go?

Funktionsnamen über Reflektion abrufen

Die Reflektion über den Typ einer Funktion liefert nicht deren Namen. Verwenden Sie stattdessen das Dienstprogramm FuncForPc, um eine *Func-Instanz abzurufen. Diese Instanz bietet Zugriff auf den Namen der Funktion, der paketqualifiziert formatiert ist, z. B. „main.main“. Wenn der unqualifizierte Name gewünscht ist, tokenisieren Sie einfach das Ergebnis.

import (
    "fmt"
    "reflect"
    "runtime"
)

func main() {
    name := runtime.FuncForPC(reflect.ValueOf(main).Pointer()).Name()
    fmt.Println("Name of function:", name)
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich den Namen einer Funktion mithilfe von Reflection in Go abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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