Typzusicherung durch Übergabe einer Typvariablen an eine Funktion
Wie Sie bereits erwähnt haben, zielen Sie darauf ab, einen Typ zu behaupten, indem Sie eine Typvariable in eine integrieren Funktion. Um dies zu erreichen, schauen wir uns die entsprechende Funktionsdeklaration für myfunction an, um die Typzusicherung zu erleichtern:
func myfunction(mystring string, mytype interface{}) bool { ... }
In dieser Deklaration:
Innerhalb von myfunction:
Eine Beispielimplementierung:
package main import ( "fmt" "reflect" ) func myfunction(mystring string, mytype interface{}) bool { return reflect.TypeOf(mystring) == reflect.TypeOf(mytype) } func main() { assertNoMatch := myfunction("hello world", map[string]string{}) fmt.Printf("%+v\n", assertNoMatch) assertMatch := myfunction("hello world", "stringSample") fmt.Printf("%+v\n", assertMatch) }
Hier können Sie einen beliebigen Typ als zweiten Parameter für myfunction angeben, und es wird beurteilt, ob der Mystring damit übereinstimmt Typ, was wertvolle Flexibilität bei Ihrer Typbehauptung bietet.
Das obige ist der detaillierte Inhalt vonWie kann ich einen Typ bestätigen, indem ich eine Typvariable an eine Funktion in Go übergebe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!