2016-03-24 18 views
1

閉包功能:如何在Swift中使用匿名閉包?

func makeIncrementer(externNumber:Int) -> (Int -> Int) { 
    func addOne(number: Int) -> Int { 
     return externNumber + number 
    } 
    return addOne 
} 

我想用匿名閉包來實現它,所以我寫這篇文章:

func my_makeIncrementer(externNumber:Int) -> (Int -> Int) { 
    return { 
     (number:Int)-> Int { // Error : cannot create a single-element tuple with an element label ; 
     return externNumber + number ; 
     } ; 
    } 
} 

可以看到,Xcode中拋出一個錯誤

錯誤:不能創建具有元素標籤的單元素元組

回答

0

您應該重新查看語法here

func my_makeIncrementer(externNumber:Int) -> (Int -> Int) { 
    return { 
     (number:Int)-> Int in 

     return externNumber + number 
    } 
} 
+0

非常感謝 – user5465320

相關問題