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

Golang - 结构之间的转换

Golang - 结构之间的转换

Go
慕运维8079593 2022-01-17 17:04:01
我有两个结构type A struct {    a int    b string}type B struct {    A    c string    // more fields}我想将 A 类型的变量转换为 B 类型(A 只定义了对某些部分至关重要的基本字段,另一方面 B 包含“完整”数据)。在 Go 中是否有可能,或者我是否必须手动复制字段(或创建一个方法 A.GetB() 或类似的方法并使用它来将 A 转换为 B)?
查看完整描述

2 回答

?
LEATH

TA贡献1936条经验 获得超6个赞

通过转换,您的意思是:


func main() {

    // create structA of type A

    structA := A{a: 42, b: "foo"}


    // convert to type B

    structB := B{A: structA}

}


查看完整回答
反对 回复 2022-01-17
?
侃侃无极

TA贡献2051条经验 获得超10个赞

这些类型AB具有不同的基础类型,因此它们不能相互转换。没门。

因此,要么手动复制,要么提供执行此复制的转换器功能或方法。


查看完整回答
反对 回复 2022-01-17
  • 2 回答
  • 0 关注
  • 187 浏览
慕课专栏
更多

添加回答

举报

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