为了账号安全,请及时绑定邮箱和手机立即绑定

检查类型变量

检查类型变量

Go
蓝山帝景 2022-07-04 16:25:43
我正在调用os/Create函数,并希望在我的一个测试用例中确保响应确实是 *os.File 类型。下面是我的代码片段。虽然我做了很多迭代,但这些行的动机是这篇文章。//somevar -- gets *os.File from a functionvar varType *os.Filetpe := 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 - 是或否。
查看完整描述

1 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

我想你可能只是在寻找


var varType *os.File

tpe := reflect.TypeOf(varType).Elem()

fmt.Println(tpe == reflect.TypeOf(somevar).Elem())


查看完整回答
反对 回复 2022-07-04
  • 1 回答
  • 0 关注
  • 199 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号