2015-06-13 33 views
10

Gần đây tôi đã cập nhật Xcode lên phiên bản 7.0 beta mới.Toán tử nhị phân '&&' không thể áp dụng cho hai toán hạng Bool

Tôi đã di chuyển với trợ lý nhưng có một vài vấn đề khác.

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

On line 4 có 4 vấn đề: một trong những đầu tiên là:

Binary điều hành '& &' không thể được áp dụng cho hai toán hạng Bool

điều thứ hai là :

Cuộc gọi có thể ném, nhưng tôi không được đánh dấu bằng 'thử' và lỗi không được xử lý

Ai đó có thể giúp tôi được không?

+1

Câu hỏi này có tiêu đề tốt hơn nhiều so với bản sao, vì các lập trình viên có khả năng google trên thông báo lỗi khó hiểu này. Để tham khảo, khai báo sau cho cùng một thông báo lỗi: func test() { trả về true && true }, Lưu ý rằng hàm được khai báo là void, tức là -> Bool bị thiếu. – ragnarius

Trả lời

2

Dưới đây là một số mã nên thực hiện thủ thuật. Hãy nhớ đặt trước các câu lệnh ném bằng cách thử và bắt chúng.

func saveContext() { 
    if let moc = self.managedObjectContext { 
     if moc.hasChanges { 
      do { 
       try moc.save() 
      } catch { 
       NSLog("Unresolved error \(error)") 
       abort() 
      } 
     } 
    } 
} 
+0

Tôi nhận được lỗi sau đây: "Loại 'ErrorType.Protocol' không phù hợp với giao thức 'ErrorType'" –

+0

Tôi đã chỉnh sửa mã. Bạn có thể thử với bản cập nhật mới nhất không? – Laurent

+0

Có ngay bây giờ nó hoạt động tốt :) cảm ơn bạn rất nhiều !!! –

Các vấn đề liên quan