Go言語の「new」と「make」にはどのような違いがありますか?
Go言語では、newとmakeはどちらもメモリーを割り当てるためのキーワードですが、その使い方と対象物は異なります。
- 新しい
- 新しい
// 使用new分配整型变量的内存
var i *int
i = new(int)
- 作る (つくる)
- 作る (つくる)
// 使用make分配切片的内存
s := make([]int, 0, 10)
要归纳一下,new用于值类型的内存分配,而make用于引用类型的内存分配。