有没有更好的方法来分配这个数组的内容,比如自动调用NewThing()
构造函数而不是手动构造每个元素?
package main
import "sync"
type Thing struct {
lock *sync.RWMutex
data chan int
}
func NewThing() *Thing {
return &Thing{ lock: new(sync.RWMutex), data: make(chan int) }
}
func main() {
n := 10
things := make([]*Thing, n)
for i := 10; i < n; i++ {
things[i] = NewThing()
}
}
我意识到我正在分配一个指针数组,我的其他尝试不成功,并且数据不是初始化通道。这只是一个人为的例子。
谢谢!