如何检查结构体字段是否用函数设置?

问题描述 投票:0回答:1

这里我有一个函数作为

deferred
字段中的类型。在某些情况下
deferred
已设置,而在其他情况下则未设置。

如果未设置,调用

invalid memory address or nil pointer dereference
时会返回
Request.run()
。调用前如何检查字段是否有功能?

type Request struct {
    deferred func(string)
}

func (r *Request) run(){
    r.deferred("test")
}
go
1个回答
0
投票

只需将其设为方法即可

package http

type request struct{}

func (request) deferred(s string) {
   println(s)
}
© www.soinside.com 2019 - 2024. All rights reserved.