2 回答
TA贡献1789条经验 获得超10个赞
type Sample struct {
value_int int
value_str string
}
func callFunc(typ string) interface{} {
if typ == "string" {
return "I am a string"
} else if typ == "integer" {
return 1
}
return nil
}
func main() {
var s Sample
s.value_int = callFunc("integer").(int)
s.value_str = callFunc("string").(string)
fmt.Println(s)
}
https://play.golang.org/p/QEPVMvAhkMQ
TA贡献1793条经验 获得超6个赞
你可以利用从go lang函数返回动态值,这里是一个简单的程序:interface
package main
import (
"fmt"
)
func main() {
data := callfunc("string")
fmt.Println(data)
data2 := callfunc("integer")
fmt.Println(data2)
}
func callfunc(str string) interface{} {
if str == "string" {
return "I am a string"
} else if str == "integer" {
return 1
}
return nil
}
输出:
I am a string
1
- 2 回答
- 0 关注
- 72 浏览
添加回答
举报