Tôi thực sự không hiểu những gì đang xảy ra ở đây.NSData isEqualtoData
Tôi có một hàm nhận được 3 byte đầu tiên từ đối tượng NSData, receiveStream và đặt chúng vào đối tượng NSData khác, temp, thông qua mảng char. Sau đó so sánh với đối tượng NSData được tạo từ một bộ đệm mảng char. Cả hai đối tượng NSData mới đều được tạo và có nội dung chính xác. Tuy nhiên, khi isEqualtoData được gọi, tôi nhận được một lỗi:
[NSConcreteData isEqualtoData:]: unrecognized selector sent to instance (instance refers to tmp2)
Tôi cũng nhận được cảnh báo
Instance method '-isEqualtoData:' not found (return type defaults to 'id')
mà tôi không hiểu vì nó là rõ ràng rằng đây là một phương pháp hợp lệ trong tài liệu. Tôi có cần khai báo NSData.h ở đâu đó không?
-(BOOL)checkHeader{
char tmp[3];
[receivedStream getBytes:&tmp length:3];
NSData *temp = [NSData dataWithBytes:tmp length:3];
NSData *tmp2 = [NSData dataWithBytes:header length:3];
BOOL test = [tmp2 isEqualtoData:temp];
return test;
}
Chỉ cần chỉnh sửa bài đăng, người đàn ông. Tôi đã thực hiện một bản sao và dán mã của bạn và đã cho tôi 10 phút để tìm ra những gì đã sai xD – falkon21