2016-12-27 120 views
2

是在宣佈閉幕聲明的返回類型

func upload(image: UIImage, completion: @escaping (_ result: String) -> Void) 

VS

func upload(image: UIImage, completion: @escaping (_ result: String) -> (Void)) 

的任何差異什麼是聲明在我看來return type

+2

考慮是不需要參數標籤(和下劃線)/在夫特3在所有使用的 – vadian

回答

0

最好的方法最好的辦法就是 func upload(image: UIImage, completion: @escaping (_ result: String) ->()) 對於現在在所有這些方面沒有區別,()正好是Void類型,但它使意圖更清晰(函數不返回任何內容)。 (Void)實際上意味着一個不包含任何內容的元組,最後在語義上是相同的,但首先不清楚。 所以如果你想在這兩者之間做出選擇,你應該首先去,但我會去()

0

是的,據我所知,不同的是,在第二個例子中,我們返回一個元組,首先我們只返回一個類型。就像我們可以使用元組返回多個類型一樣。

func upload(image: UIImage, completion: @escaping (_ result: String) -> (String,Int)) 
+1

'(T)=== T'在夫特(在版本1-3至少,不能告訴未來)。 – user28434