更改Go中的结构类型
我有两种结构类型更改Go中的结构类型,go,type-conversion,Go,Type Conversion,我有两种结构类型 type type1 struct { a1,b1,c1 string } type type2 struct { a2,b2 string } 如果条件为真,则希望更改变量p的类型。在围棋中我该怎么做?下面的代码不起作用。我想问题是,“Golang:不同结构类型之间可以转换吗?”没有解决这个问题,因为我遇到了错误“无法转换p..无法在赋值中使用type2作为type1…结构初始值设定项中的值太多” var p type1 如果{ p=类型2(p) p=type2{“1”,“
type type1 struct {
a1,b1,c1 string
}
type type2 struct {
a2,b2 string
}
如果条件为真,则希望更改变量p的类型。在围棋中我该怎么做?下面的代码不起作用。我想问题是,“Golang:不同结构类型之间可以转换吗?”没有解决这个问题,因为我遇到了错误“无法转换p..无法在赋值中使用type2作为type1…结构初始值设定项中的值太多”
var p type1
如果{
p=类型2(p)
p=type2{“1”,“2”}
}
不可能
根据我对go类型系统的理解,p是类型1,周期。编译器如何知道在if条件之后p是什么类型?你所能做的就是分配字段。的可能重复项。现在不是重复项,不能将type1与Type2分配根据我对go type系统的理解,p是type1,句号。编译器如何知道在if条件之后p是什么类型?你所能做的就是分配字段。你所说的有道理。没有考虑过。那么我把它转换成一个实际的答案。
var p type1
if <condition> {
p = type2(p)
p = type2{"1","2"}
}