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

使用结构中的 int 字段检查 nil?

使用结构中的 int 字段检查 nil?

Go
MYYA 2022-07-11 15:27:58
我有这段代码,我试图在将它传递给比较结构函数之前检查 point.x、point.y、size.width、size.height 上的 nil (如果有 nil 则返回错误)。无论我尝试哪种方式,我都会遇到错误,我不禁认为我完全想多了。
查看完整描述

1 回答

?
冉冉说

TA贡献1877条经验 获得超1个赞

你不能检查 nil 因为 int 在 Go 中不可能是 nil。如果您没有显式初始化它,它将具有值 0。

您在现已删除的评论中表示担心您会因此遇到运行时错误。你不会,但你可能没有预期的行为。

如果 0 不是您的域的有效值,您可以简单地检查 0。

否则,如果您想让事情变得更明确,您可以这样做,以便某人只能通过调用您编写的函数来初始化值,并且只能通过 getter 公开公开值(使值不可变)。


查看完整回答
反对 回复 2022-07-11
  • 1 回答
  • 0 关注
  • 138 浏览
慕课专栏
更多

添加回答

举报

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