os / Create関数を呼び出していますが、テストケースの1つで、応答が実際に* os.Fileタイプであることを確認したいと思います。
以下は私のコードスニペットです。私は何度も繰り返しましたが、これらの行の動機はこの投稿でした。
//somevar -- gets *os.File from a function
var varType *os.File
tpe := reflect.TypeOf(varType).Elem()
fmt.Println(reflect.TypeOf(somevar).Implements(tpe)) // I expect a true or false
このコードを実行すると、パニックになります。
panic: reflect: non-interface type passed to Type.Implements [recovered]
panic: reflect: non-interface type passed to Type.Implements
私が間違っていることを提案してください。私がチェックしたいのは-いくつかの変数はタイプ* os.File-はいまたはいいえです。
私はあなたがただ探しているかもしれないと思います
var varType *os.File
tpe := reflect.TypeOf(varType).Elem()
fmt.Println(tpe == reflect.TypeOf(somevar).Elem())
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加