gpt4 book ai didi

go - 检查类型变量

转载 作者:行者123 更新时间:2023-12-01 22:19:57 26 4
gpt4 key购买 nike

我正在调用 os/Create函数并希望在我的一个测试用例中确保响应确实是 *os.File 类型。
下面是我的代码片段。虽然我做了很多迭代,但这些行的动机是this post.

//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 :
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())

关于go - 检查类型变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64093530/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com