型変数を関数に渡すことによる型アサーション
あなたが述べたように、型変数を関数に組み込むことで型をアサートすることを目的としています。関数。これを達成するには、型アサーションを容易にするために 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 の 2 番目のパラメーターとして任意の型を指定でき、mystring がそれに一致するかどうかを評価します。型を使用して、型アサーションに貴重な柔軟性を提供します。
以上がGo で型変数を関数に渡して型をアサートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。