Aufrufen von Strukturmethoden nach Namen in Go
Die Abfrage bezieht sich auf den Aufruf einer Methode für eine Go-Struktur durch Angabe ihres Namens. Im Gegensatz zur bereitgestellten MethodByName()-Funktion sieht das OP einen direkteren Ansatz vor.
Implementieren der Anfrage
Um dies zu erreichen, verwenden Sie die folgenden Schritte:
Beispielimplementierung:
package main import "fmt" import "reflect" type MyStruct struct {} func (p *MyStruct) MyMethod() { fmt.Println("My statement") } func main() { var s MyStruct reflect.ValueOf(&s).MethodByName("MyMethod").Call(nil) }
Ausgabe:
My statement
Hinweis: The MethodByName ()-Funktion akzeptiert ein Zeichenfolgenargument, das den Namen der Methode darstellt.
Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von Reflection eine Go-Struct-Methode beim Namen aufrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!