2013-09-21 40 views
18

tôi đang cố gắng để tạo ra các bài kiểm tra đơn vị sử dụng khuôn khổ XCTest mới được giới thiệu trong Xcode 5. Tôi có một dòng trong một trong các trường hợp thử nghiệm của tôi trông như thế này:Clang Lỗi: Tham chiếu đến NSUTF8StringEncoding là mơ hồ

XCTAssertEqual([self.client stringEncoding], NSUTF8StringEncoding, …);

Khi tôi cố gắng chạy thử nghiệm của mình, Xcode sẽ phát ra lỗi này: "Tham chiếu đến NSUTF8StringEncoding không rõ ràng". Tôi có thể lấy thử nghiệm để làm việc bằng cách thay đổi dòng trên để thế này: (. Này hoạt động vì 4 là giá trị của NSUTF8StringEncoding)

XCTAssertEqual([self.client stringEncoding], (NSStringEncoding) 4, …);

này cũng xảy ra khi tôi gán NSUTF8StringEncoding cho một biến địa phương và sử dụng nó trong cuộc gọi XCTAssertEqual() thay thế. Tại sao tôi nhận được lỗi này?

+0

Mã đó phù hợp với tôi. Nếu bạn đặt NSUTF8StringEncoding trở lại trong hàm và nhấp vào lệnh đó, bạn sẽ thấy gì? – bneely

+0

@bneely: Khi tôi Command-click vào NSUTF8StringEncoding, tôi được đưa trực tiếp đến khai báo của nó tại dòng 'NSString.h' 40. Nó vẫn không biên dịch. – wjk

+0

Bạn đang liên kết khung nào trong mục tiêu thử nghiệm đơn vị của mình? Bạn đang bao gồm (các) tiêu đề nào trong tệp triển khai kiểm tra đơn vị (tệp .m)? – bneely

Trả lời

0

Vui lòng nhập khung bên dưới vào tệp của bạn.

#import <UIKit/UIKit.h> 
Các vấn đề liên quan