Go言語の「new」と「make」にはどのような違いがありますか?

Go言語では、newとmakeはどちらもメモリーを割り当てるためのキーワードですが、その使い方と対象物は異なります。

  1. 新しい
  2. 新しい
// 使用new分配整型变量的内存
var i *int
i = new(int)
  1. 作る (つくる)
  2. 作る (つくる)
// 使用make分配切片的内存
s := make([]int, 0, 10)

要归纳一下,new用于值类型的内存分配,而make用于引用类型的内存分配。

bannerAds