Golang中定义的变量

时间:2015-03-17 06:29:50

标签: go

我创建了一个类型为

的var
var RespData   []ResponseData

type ResponseData struct {
   DataType       string      
   Component      string      
   ParameterName  string      
   ParameterValue string      
   TableValue     *[]Rows 
}

type TabRow struct {
   ColName     string 
   ColValue    string 
   ColDataType string 
}

type Rows *[]TabRow

我想填写TableValue类型的*[]Rows。 您可以通过分配TableValue中的任何值来告诉我一个例子。

1 个答案:

答案 0 :(得分:1)

Slices are reference type(已经是kind of pointer),因此您不需要指向切片的指针(*[]Rows)。

您可以使用TableValue []Rows切片,RowsTabRow Rows []*TabRow的指针切片。

tr11 := &TabRow{ColName: "cname11", ColValue: "cv11", ColDataType: "cd11"}
tr12 := &TabRow{ColName: "cname12", ColValue: "cv12", ColDataType: "cd12"}
row1 := Rows{tr11, tr12}
rd := &ResponseData{TableValue: []Rows{row1}}
fmt.Printf("%+v", rd )

请参阅this example