Go: for a == b 这么写的原因?

下图是一段 gorm 的一段源码。在 modelType.Kind() == xxx 这段为什么使用 for ?如果其中一个为 true 不就是无限循环了吗?

Go: for a == b 这么写的原因?

go
光年之外
Summer
最佳答案

for 用法类似于一个深度 dereference 操作,应付 指针的指针 的场景,得到最终的值以后会退出,不会死循环。

这里有一个讨论可以参考 github.com/go-gorm/gorm/issues/458...

2年前 评论
讨论数量: 3

modelType 在for会赋值的,结果就是获取最后的那个modelType的值

2年前 评论
Summer

for 用法类似于一个深度 dereference 操作,应付 指针的指针 的场景,得到最终的值以后会退出,不会死循环。

这里有一个讨论可以参考 github.com/go-gorm/gorm/issues/458...

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!