2014-09-20 35 views
1

我剛剛更新到Xcode 6的非beta版本(最終),並且從beta 5中獲得了一些錯誤我以前沒有得到的,其中之一是「無法找到‘& &’接受所提供的參數過載」Swift:更新Xcode時發生錯誤:'無法找到接受提供的參數的'&&'超載'

在這裏,我和另外一個問題下面的教程,我知道這個錯誤是因爲」表達太複雜,無法在合理的時間內解決;考慮將表達分解成不同的子表達式。「 我是初學者;我如何將表達式分解爲子表達式?

我的代碼:

func checkForWin(){ 
     //first row across 
     var youWin = 1 
     var theyWin = 0 
     var whoWon = ["Lost":0,"Won":1] 
     for (key,value) in whoWon { 
      if ((plays[6] == value && plays[7] == value && plays[8] == value) || //across the bottom 
      (plays[3] == value && plays[4] == value && plays[5] == value) || //across the middle 
      (plays[0] == value && plays[1] == value && plays[2] == value) || //across the top 
      (plays[6] == value && plays[3] == value && plays[0] == value) || //down the left side 
      (plays[7] == value && plays[4] == value && plays[1] == value) || //down the middle 
      (plays[8] == value && plays[5] == value && plays[2] == value) || //down the right side 
      (plays[6] == value && plays[4] == value && plays[2] == value) || //diagonal 
       (plays[8] == value && plays[4] == value && plays[0] == value)){//diagonal 
        userMessage.hidden = false 
        youLabel.hidden = false 
        userMessage.text = "\(key)!" 
        done = true; 
      } 
     } 
    } 
+0

什麼是「戲劇」? – AstroCB 2014-09-20 02:56:56

+0

'var plays = [Int:Int]()' – skyguy 2014-09-20 04:46:49

回答

0

要打破它,你只需要增加更多的()秒。像這樣:

if (((plays[6] == value) && (plays[7] == value) && (plays[8] == value)) || 
((plays[3] == value) && (plays[4] == value) && (plays[5] == value)) || 
((plays[0] == value) && (plays[1] == value) && (plays[2] == value)) || 

((plays[8] == value) && (plays[4] == value) && (plays[0] == value)))