field:value 和 value 初始值设定项的混合

为什么我不能用匿名字段创建以下内容?


type T1 struct {

    T1_Text string

}


type T2 struct {

    T2_Text string

    T1

}

用在 func ..


t := T2{

    T2_Text: "Test",

    T1{T1_Text: "Test"},

}

给我:字段:值和值初始值设定项的混合?


守着一只汪
浏览 351回答 2
2回答

杨__羊羊

简要说明。你得到它的原因是因为你只能使用两种类型的初始化器中的一种,而不是两种。即您可以使用field:value或value。使用你的例子,你要么做字段:值t := T2{    T2_Text: "Test",    T1: T1{T1_Text: "Test"},}或只有值t := T2{    "Test",    T1{"Test"},}希望能解释原因
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go