我正在查看這段代碼,它創建了一個enum和一個使用枚舉的字典,後來在字典上開關了一個開關。在這個Swift代碼中會發生什麼
這是從斯坦福大學CS193P計算器課程的解決方案。枚舉中的其中一種情況包含此代碼。
case binaryOperation(Double, Double) -> Double, (String, String) -> String
在字典中的定義之一是這樣的:
"*" : Operation.binaryOperation(*, {$0 + "*" + $1})
字典包含加,減,和分割相似的定義。
這個計算器工作正常。顯示正確的答案,並在第二行中顯示輸入的說明。我不確定它是否正在計算正確的答案。
swift如何知道從第二個參數中取參數$ 0和$ 1並在第一個參數中使用它們?
我希望這個問題有道理。還有更多的代碼涉及我沒有顯示。
你的意思是'的情況下binaryOperation( (Double,Double) - > Double,(String,String) - > String)',對嗎? (注意外括號)。 – Hamish