相关疑难解决方法(0)

检查value是否实现接口的说明

我读过"Effective Go"和其他问答:golang界面兼容性编译类型检查,但是我无法正确理解如何使用这种技术.

请看例子:

type Somether interface {
    Method() bool
}

type MyType string

func (mt MyType) Method2() bool {
    return true
}

func main() {
    val := MyType("hello")

    //here I want to get bool if my value implements Somether
    _, ok := val.(Somether)
    //but val must be interface, hm..what if I want explicit type?

    //yes, here is another method:
    var _ Iface = (*MyType)(nil)
    //but it throws compile error
    //it would be great if someone explain the notation …
Run Code Online (Sandbox Code Playgroud)

interface type-conversion go

20
推荐指数
4
解决办法
2万
查看次数

标签 统计

go ×1

interface ×1

type-conversion ×1