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()
}
}
ポインターの配列を割り当てていることに気付きました。他の試行は失敗し、データは初期化されたチャネルではありませんでした。これは単なる例です。
ありがとう!