在Go語言中,有以下幾種方法可以給指針賦值:
=
運算符直接將一個變量的地址賦給指針變量。例如:var x int = 10
var ptr *int
ptr = &x
new()
函數:new()
函數會為指定類型的變量分配內存,并返回指向該內存地址的指針。例如:ptr := new(int)
*ptr = 10
&
:可以使用&
運算符獲取一個變量的地址,并將其賦給指針變量。例如:var x int = 10
var ptr *int
ptr = &x
make()
函數(僅限于切片、映射和通道):對于切片、映射和通道類型,可以使用make()
函數來創建并初始化一個指針變量。例如:var ptr *[]int
ptr = new([]int)
*ptr = make([]int, 5)
這些方法都可以用來給指針變量賦值,選擇使用哪種方法取決于具體的需求和情況。