为了账号安全,请及时绑定邮箱和手机立即绑定

golang 怎么判断一个结构体有没有被初始化过?

golang 怎么判断一个结构体有没有被初始化过?

Go
绝地无双 2018-12-13 19:15:44
golang 怎么判断一个结构体有没有被初始化过
查看完整描述

1 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

ect1 := new(Rect)

rect2 := &Rect{}
rect3 := &Rect{0, 0, 100, 200}
rect4 := &Rect{width:100, height:200}
注意这几个变量全部为指向Rect结构的指针(指针变量),因为使用了new()函数和&操作符.而如果使用方法

a := Rect{}
则表示这个是一个Rect{}类型.两者是不一样的.参考代码:

func main() {
rect1 := &Rect{0, 0, 100, 200}
rect1.x = 10

a := Rect{}
a.x = 15

fmt.Printf("%v\n%T\n", a, a)
fmt.Printf("%v\n%T\n", rect1, rect1)
}
运行结果为:

{15 0 0 0}
main.Rect
&{10 0 100 200}
*main.Rect



查看完整回答
反对 回复 2019-01-06
  • 1 回答
  • 0 关注
  • 2626 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信