透過將類型變數傳遞到函數中進行類型斷言
正如您所提到的,您的目標是透過將類型變數合併到功能。為了實現這一點,讓我們深入研究 myfunction 的適當函數聲明,以促進類型斷言:
func myfunction(mystring string, mytype interface{}) bool { ... }
在此聲明中:
在 myfunction 中:
範例實作:
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) }
這裡,您可以提供任何類型第二個給myfunction 作為第二個參數,它將評估mystring 是否與該類型匹配類型,為類型斷言提供寶貴的靈活性。
以上是如何透過將類型變數傳遞到 Go 中的函數來斷言類型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!