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

结构声明样式之间的句法/语义差异

结构声明样式之间的句法/语义差异

Go
慕盖茨4494581 2023-05-15 10:38:21
这两个声明之间有什么区别吗?type Foo = struct {     F string `zoom:"1"`     }和type Foo struct {     F string `zoom:"1"`     }他们都编译并且似乎工作相同。
查看完整描述

1 回答

?
RISEBY

TA贡献1856条经验 获得超5个赞

第二个,它是结构声明的一个例子。


type Foo struct {

    F string `zoom:"1"`

}

第一个是 go1.9 新特性的使用示例:type aliases。


Foo创建了一个新类型。它是匿名结构的别名。


type Foo = struct {

    F string `zoom:"1"`

}

类型别名语法可用于定义结构。在上面的示例中,它生成了一个等效的结果,如type Foo struct.


但是,类型别名的最初目的是从定义的类型中创建别名。


在下面的示例中,创建了一个名为 的新类型Bar,它是 struct 的别名Foo。


type Foo struct {

    F string `zoom:"1"`

}

type Bar = Foo


查看完整回答
反对 回复 2023-05-15
  • 1 回答
  • 0 关注
  • 82 浏览
慕课专栏
更多

添加回答

举报

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