【发布时间】:2016-08-07 05:40:43
【问题描述】:
假设我们有这段代码:
type User struct {
int32
Name string
}
这种类型的嵌入有用吗?int32 是否有任何其他人可以调用 User 实例的方法?
如何访问 User 嵌入的 int32 的值?
【问题讨论】:
-
您可以使用 User 作为该类型。以
if user > 0 ...为例。如果原语有方法,那么这些方法也会被提升。 -
@eduncan911 你能粘贴一个示例代码吗?我无法在 Go Playground 上做到这一点。
-
@eduncan911 不,你不能这样做:
u > int32(0)导致invalid operation: u > int32(0) (mismatched types User and int32) -
啊,没错。你仍然需要通过名称访问属性:play.golang.org/p/mIk_7ewRkN