[英]How do I make a customized type array of customized type elements in Go?
我正在尝试创建一个名字和薪水的人,然后是一群人。 我在“data [0] = a”处得到的错误表明:“不能使用(类型人)作为类型*人员。” 我需要做某种类型的转换,就像在Java中一样吗?
package main
import "fmt"
type person struct {
name string
salary float64
}
type people []*person
func main() {
var data = make(people, 10)
var a person
var b person
a.name = "John Smith"
a.salary = 74000
b.name = "Jane Smith"
b.salary = 82000
data[0] = a
data[1] = b
fmt.Print(data)
}
你构建一个指向 person
的指针 。 这就是为什么你应该指向你a
和b
。
package main
import "fmt"
type person struct {
name string
salary float64
}
type people []*person
func main() {
var data = make(people, 10)
var a person
var b person
a.name = "John Smith"
a.salary = 74000
b.name = "Jane Smith"
b.salary = 82000
data[0] = &a
data[1] = &b
fmt.Print(data)
}
另一种方法是将a
和b
定义为结构的指针。
package main
import "fmt"
type person struct {
name string
salary float64
}
type people []*person
func main() {
var data = make(people, 10)
a := &person{}
b := &person{}
a.name = "John Smith"
a.salary = 74000
b.name = "Jane Smith"
b.salary = 82000
data[0] = a
data[1] = b
fmt.Print(data)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.