我真的不明白这里发生了什么。
我有一个函数,它从NSData对象receivedStream获取前3个字节,并通过char数组将它们放入另一个NSData对象temp中。然后将其与从char数组缓冲区创建的NSData对象进行比较。创建了两个新的NSData对象,并具有正确的内容。但是,当调用isEqualtoData时,我会得到一个错误:
NSConcreteData isEqualtoData::未识别的选择器发送到实例(实例引用tmp2)
我也收到警告
实例方法'-isEqualtoData:‘not (返回类型默认值为'id')
我不明白,因为在文档中这是一个有效的方法。我需要在什么地方申报NSData.h吗?
-(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;
}发布于 2011-10-22 23:59:32
该方法称为isEqualToData:。注意,与大多数编程语言一样,大写T-Objective是区分大小写的.
https://stackoverflow.com/questions/7863390
复制相似问题