将一个结构复制到另一个结构具有相同成员和不同类型的结构

新手上路,请多包涵

我有两个 struct 具有相同的成员,我想将一个结构复制到另一个结构,请参见下面的伪代码:

 type Common struct {
    Gender int
    From   string
    To     string
}

type Foo struct {
    Id    string
    Name  string
    Extra Common
}

type Bar struct {
    Id    string
    Name  string
    Extra Common
}

Then I have foo of struct Foo , and bar of struct Bar , Is there any way to copy bar 来自 foo

原文由 jsvisa 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.2k
2 个回答

使用 转换 来更改类型。以下代码使用转换将类型 --- 的值复制到类型 Foo Bar 值:

 foo := Foo{Id: "123", Name: "Joe"}
bar := Bar(foo)

游乐场示例

仅当基础类型除结构标记外都相同时, 转换 才有效。

原文由 Cerise Limón 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题