2015-07-09 99 views
0

在「Swift編程語言指南」的「函數類型」一節中,它表示「因爲參數類型和返回類型可以是元組類型,所以函數類型支持使用多個參數並返回多個值的函數和方法。「Swift中的函數參數類型

請注意單詞」可以「的用法 - 是否意味着參數類型可以是其他內容?或者參數類型只能是元組?

+0

它可以是一個單一的值 –

+0

我認爲這個評論更多的目的是指出返回類型不限於任何一個單值比參數是。另外,要記住所有的東西都是元組,所以一個值就是一個元組,因此每個值都有一個.0屬性。 –

+0

「單值也可以被提升爲1元組。」我不認爲它們被「提升」爲1元組,儘管1元組存在,但它們是1元組, 「如果圓括號中只有一個元素,那麼類型就是該元素的類型,例如,(Int)的類型是Int,而不是(Int)。因此,只能在「摘錄自:蘋果公司」Swift編程語言(Swift 2預發佈)「。 –

回答

1

您可以使用元組或帶參數調用函數

例如,

func sum(a: Int, b: Int) -> Int { 
    return a + b 
} 

你可以稱之爲:

let numbers = (40,2) 
sum(numbers) 

還是老辦法像

sum(40,2) 
+0

根據你的例子,它看起來像多值函數params是元組。 – Boon

0

元組是指一組參數,而不是 「唯一」 參數。

默認方式意味着每個參數一個值是這樣的:

func setValue(myValue:Int) { ... } 
setValue(3) 

另外一個元組可以多一個參數:

func setValues(myValues:(Int,String)) { ... } 
setValues((1, "Hello")) 

所以元組是可能的,但共同的方式是隻使用單個值

+0

雖然(空元組)也可以表示沒有參數,單個元素也可以稱爲元組。所以從技術上講,它們可以基於嚴格元組來製作函數參數。因此,我很好奇,是否真的有其他的東西可用作函數參數而不是元組。 – Boon