2015-10-19 71 views
0

如何在swift 2.1中編寫此教程?如何使斯坦福大學的C193功能適應Swift 2.1

我正在通過斯坦福大學的C193 swift編程課,我使用的是swift 2.1。

我想給用戶顯示一個計算器的操作數和操作的歷史。

它給我這個錯誤:

"Ambiguous reference to member 'map'.

func showStack() -> String? {   
    return .joinWithSeparator(opStack.map { "\($0)" })  
} 

回答

1

不能將.joinWithSeparator不了了之,它必須在一個集合(數組爲例)使用。而opStack.map { "\($0)" }不會做出好的分隔符。


雨燕1.2的版本是:

func showStack() -> String? { 
    return " ".join(opStack.map{ "\($0)" }) 
} 

雨燕2的版本是:

func showStack() -> String? { 
    return opStack.map{ "\($0)" }.joinWithSeparator(" ") 
} 

你只需要提取opStack.map{ "\($0)" }和應用joinWithSeparator它(以下簡稱 「joinWithSeparator」 方法在新的Apple Swift 2文檔中有解釋)。

+1

我的困惑是因爲我從1.2版本推斷。謝謝埃裏克。 – dechairman

相關問題