特定の型が Reflect パッケージを使用してインターフェイスを実装しているかどうかを確認するには、 Reflect.Type は、reflect.Type.Implements() に渡す必要があります。ただし、そのような型を取得するのは、特に初期化されていないインターフェイス型の場合、困難な場合があります。
インターフェイスのreflect.Typeを取得するには、次のいずれかの方法を使用します。
Elem() の使用メソッド:
var err error t := reflect.TypeOf(&err).Elem()
1 行:
t := reflect.TypeOf((*error)(nil)).Elem()
両方のメソッドで、 Elem() メソッドは、インターフェイスの実際のタイプ (この場合はエラー) を取得するために使用され、必要なreflect.Type を提供します。さらなる処理のために。
以上がGoでインターフェイスのreflect.Typeを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。