日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
快報(bào):正式提案將泛型特性加入Go語(yǔ)言

本文轉(zhuǎn)載自微信公眾號(hào)「腦子進(jìn)煎魚(yú)了」,作者陳煎魚(yú)。轉(zhuǎn)載本文請(qǐng)聯(lián)系腦子進(jìn)煎魚(yú)了公眾號(hào)。

大家好,我是煎魚(yú)。

經(jīng)歷九九八十一難,多年的不斷探討和 Go 語(yǔ)言愛(ài)好者們?cè)谏鐓^(qū)中的強(qiáng)烈關(guān)注,且 Go 官方在 2020 年不斷放出消息。

總算在 2021 年 1 月 12 日,官方正式提出將泛型特性加入 Go 語(yǔ)言的 proposal 了,且最新的草案設(shè)計(jì)已經(jīng)更新。

基本語(yǔ)法如下:

 
 
 
 
  1. func Print[T any](s []T) {
  2.  // same as above
  3. }

其大體的概述如下:

  • 函數(shù)可以具有使用方括號(hào)的其他類(lèi)型參數(shù)列表,但其他情況下看起來(lái)像普通的參數(shù)列表:func F[T any](p T) { ... }。
  • 類(lèi)型也可以具有類(lèi)型參數(shù)列表:type MySlice[T any] []T。
  • 每個(gè)類(lèi)型參數(shù)都有一個(gè)類(lèi)型約束,就像每個(gè)普通參數(shù)都有一個(gè)類(lèi)型:func F[T Constraint](p T) { ... }。
  • 類(lèi)型約束是接口類(lèi)型。
  • 新的預(yù)聲明名稱(chēng) any 是允許任何類(lèi)型的類(lèi)型約束。
  • 用作類(lèi)型約束的接口類(lèi)型可以具有預(yù)先聲明的類(lèi)型的列表。只有與那些類(lèi)型之一匹配的類(lèi)型參數(shù)才能滿(mǎn)足約束條件。
  • 泛型函數(shù)只能使用其類(lèi)型約束所允許的操作。
  • 使用泛型函數(shù)或類(lèi)型需要傳遞類(lèi)型實(shí)參。
  • 在通常情況下,類(lèi)型推斷允許省略函數(shù)調(diào)用的類(lèi)型參數(shù)。

根據(jù)官方博客的消息,如果該提案被正式接受。那么將會(huì)在 2021 年底之前完成一個(gè)基本可用的泛型功能(可能未完全優(yōu)化),又或是會(huì)作為 Go1.18beta 的一部分。

這是 Go 泛型特性的又一步歷史性前進(jìn),這一個(gè)里程碑。若大家有興趣進(jìn)一步了解或想提出意見(jiàn),可查看下述傳送門(mén):

  • [A Proposal for Adding Generics to Go]:https://blog.golang.org/generics-proposal。
  • [proposal: spec: add generic programming using type parameters]:https://github.com/golang/go/issues/43651。

不知道今年年底或 Go1.18beta 能不能真的看到泛型的正式完整可用版本呢,值得期待!


文章標(biāo)題:快報(bào):正式提案將泛型特性加入Go語(yǔ)言
當(dāng)前地址:http://m.5511xx.com/article/cdhgpig.html