您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Go1.17新增了什么”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Go1.17新增了什么”這篇文章吧。
Go 1.17 已正式發(fā)布。
此版本改進(jìn)了編譯器,具體來說是采用了一種新的函數(shù)參數(shù)和結(jié)果傳遞方式。官方稱此項(xiàng)變化將 Go 程序的性能提升了大約 5%,并將 amd64 平臺(tái)的二進(jìn)制包大小減少了大約 2%,未來還計(jì)劃支持更多平臺(tái)。
Go 1.17 還增加了對(duì) Windows 上 64 位 ARM 架構(gòu)的支持,讓 Go 開發(fā)者能夠在更多設(shè)備上原生運(yùn)行 Go。
新版本還增加了 pruned module graphs 功能。官方對(duì)此功能的描述為,當(dāng) Modules 在其go.mod文件中指定了go 1.17或更高版本,其 module graph 只包括其他 Go 1.17 模塊的直接依賴,而不是其全部的橫向依賴。這將有助于避免go.mod為其他不相關(guān)的依賴下載或讀取文件,從而在日常開發(fā)中節(jié)省時(shí)間。
語言方面,Go 1.17 包含三個(gè)針對(duì)語言特性的改進(jìn):
支持從 slice (切片)到數(shù)組指針的轉(zhuǎn)換
unsafe.Add:unsafe.Add(ptr, len)將len添加ptr并返回更新的指針unsafe.Pointer(uintptr(ptr) + uintptr(len))
unsafe.Slice : 對(duì)于*T類型的ptr表達(dá)式,unsafe.Slice(ptr, len) 返回一個(gè)[]T類型的切片,其底層數(shù)組從ptr開始, 其長(zhǎng)度和容量為len
……
其他的更新內(nèi)容包括一些功能改進(jìn)和錯(cuò)誤修復(fù),例如針對(duì) crypto/x509 的驗(yàn)證改進(jìn),以及對(duì) URL 查詢解析的更改。
詳情查看完整 release note:https://golang.org/doc/go1.17
下載地址:https://golang.org/dl/
以上是“Go1.17新增了什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。