问题是我无法访问Converter
函数内的结构属性,但我可以打印它们。
func main() {
var io struct {
Src string
Dest string
}
flag.StringVar(&io.Src, "src", "temp_dir", "")
flag.StringVar(&io.Dest, "dest", "users_dir", "")
modules.Converter(&io)
}
// ./src/modules/converter.go
package modules
func Converter(io interface{}) {
fmt.Println(io)
// => {temp_dir users_dir}
}
我做错了什么?将多个道具传递到功能中的正确方法是什么?
首先,您需要将io结构更改为io
var Io struct {
Src string
Dest string
}
功能输入应该以这种方式改变
package modules
import "fmt"
func Converter(io *namePackage.Io) {
fmt.Println(io.Src,io.Dest)
}