首頁 >後端開發 >Golang >go語言中的不定參數型別是什麼意思

go語言中的不定參數型別是什麼意思

王林
王林原創
2021-02-07 14:36:383187瀏覽

go語言中的不定參數類型是指函數傳入的參數個數為不定數量,其程式碼範例如「func Add(a int, args ...int) (result int)」。

go語言中的不定參數型別是什麼意思

本文操作環境:windows10系統、Go 1.11.2、thinkpad t480電腦。

不定參數是指函數傳入的參數個數為不定數。

package main
 
import (
    "fmt"
)
 
 
//不定参数函数
func Add(a int, args ...int) (result int) {
    result += a
    for _, arg := range args {
        result += arg
    }
    return
}
 
func main() {
    fmt.Println(Add(1, 2, 3, 4, 5, 6, 7, 8, 9, 10))

程式碼中的args是一個陣列切片,而且只能放在參數中的最後面。

相關拓展介紹:

Go(又稱Golang)是Google開發的靜態強型別、編譯型、並髮型,並具有垃圾回收功能的程式語言。

羅伯特·格瑞史莫(Robert Griesemer),羅布·派克(Rob Pike)及肯·湯普遜(Ken Thompson)於2007年9月開始設計Go,稍後Ian Lance Taylor、Russ Cox加入計畫。 Go是基於Inferno作業系統所開發的。 Go於2009年11月正式宣布推出,成為開放原始碼項目,並在Linux及Mac OS X平台上進行了實現,後來追加了Windows系統下的實現。在2016年,Go被軟體評估公司TIOBE 選為「TIOBE 2016 年最佳語言」。目前,Go每半年發布一個二級版本(即從a.x升級到a.y)。

Go的語法接近C語言,但對於變數的宣告有所不同。 Go支援垃圾回收功能。 Go的平行模型是以東尼·霍爾的通訊順序進程(CSP)為基礎,採取類似模型的其他語言包括Occam和Limbo,但它也具有Pi運算的特徵,例如通道傳輸。在1.8版本中開放插件(Plugin)的支持,這意味著現在能從Go中動態載入部分函數。

與C 相比,Go不包括如枚舉、異常處理、繼承、泛型、斷言、虛函數等功能,但增加了切片(Slice) 型、並發、管道、垃圾回收、介面(Interface)等特性的語言級支援。 Go 2.0版本將支援泛型,對於斷言的存在,則持負面態度,同時也為自己不提供類型繼承來辯護。

不同於Java,Go內嵌了關聯陣列(也稱為雜湊表(Hashes)或字典(Dictionaries) ),就像字串型別一樣。 

相關建議:golang教學

#

以上是go語言中的不定參數型別是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn