go語言基礎之new函數


1、new函數

         表達式new(T)將創建一個T類型的匿名變量,所做的是為T類型的新值分配並清零一塊內存空間,然后將這塊內存空間的地址作為結果返回,而這個結果就是指向這個新的T類型值的指針值,返回的指針類型為*T。

         我們只需使用new()函數,無需擔心其內存的生命周期或怎樣將其刪除,因為Go語言的內存管理系統會幫我們打理一切。

 

示例:  二種不同寫法

package main //必須有個main包

import "fmt"

func main() {
	//a := 10 //整型變量a

	var p *int
	//指向一個合法內存
	//p = &a

	//p是*int, 指向int類型
	p = new(int)

	*p = 666
	fmt.Println("*p = ", *p)

    //第二種寫法,自動推導類型
	q := new(int) //自動推導類型
	*q = 777
	fmt.Println("*q = ", *q)
}

#執行結果:

*p =  666
*q =  777

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM