2015-06-13 7 views
10

angewendet werden, ich kürzlich Xcode auf die neue 7.0 Beta aktualisiert.Binary Operator ‚&&‘ kann nicht auf zwei Bool-Operanden

habe ich die Migration mit dem Assistenten, aber es gibt noch ein paar Fragen.

func saveContext() { 
    if let moc = self.managedObjectContext { 
     var error: NSError? = nil 
     if moc.hasChanges && !moc.save() { 
      NSLog("Unresolved error \(error), \(error!.userInfo)") 
      abort() 
     } 
    } 
} 

Zeile 4 gibt es 4 Ausgaben: die erste ist:

Binäroperator '& &'

die zweite nicht anzuwenden zwei Bool Operanden werden :

Anruf kann werfen, aber ich es s nicht markiert mit "versuchen" und der Fehler wird nicht behandelt

Kann mir bitte jemand helfen?

+1

Diese Frage hat einen viel besseren Titel als das Duplikat, da Programmierer wahrscheinlich auf diese verwirrende Fehlermeldung googeln werden. Als Referenz gibt die folgende Deklaration dieselbe Fehlermeldung: func test() { return true && true } Beachten Sie, dass die Funktion als void deklariert ist, d. H. -> Bool fehlt. – ragnarius

Antwort

2

Hier ist ein Code, der den Trick tun sollten. Denken Sie daran, throw-Anweisungen mit versuchen voraus und fangen sie.

+0

Ich bekomme jetzt folgenden Fehler: "Typ 'ErrorType.Protocol' entspricht nicht dem Protokoll 'ErrorType'" –

+0

Ich habe den Code bearbeitet. Können Sie es mit dem neuesten Update versuchen? – Laurent

+0

Ja jetzt funktioniert es gut :) Vielen Dank !!! –