我正在设置一些常量,一个是NSDate,但接收到这个啰嗦的消息:
使用NSDate *const __strong
类型的表达式初始化NSString
的指针类型不兼容
代码的简单解释(imp文件):
NSDate *const kPAPUserBirthdayKey = @"fbBirthday";
高级说明: 我使用常量文件作为单独持有我写入的API的常量变量。例如,上面是一个Date字段,用于在连接Facebook时保存facebook用户的生日。
稍后将在以下转换中使用:
// Convert the DOB string into Date format
NSDateFormatter* df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"MM/dd/yyyy"];
NSDate* userDOB = [df dateFromString:user.birthday];
[[PFUser currentUser] setObject:userDOB forKey:kPAPUserBirthdayKey];
有人可以解释警告实际意味着什么以及应该在哪里更改?我在上面的最后一行得到了同样的错误?
答案 0 :(得分:1)
NSDate *const kPAPUserBirthdayKey = @"fbBirthday";
您正在为NSDate分配字符串。
将NSDate
更改为NSString
。
使用:强>
NSString const *kPAPUserBirthdayKey = @"fbBirthday";
还要检查你需要什么?
答案 1 :(得分:0)
NSDate *const kPAPUserBirthdayKey = @"fbBirthday";
此处fbBirthday
是一个字符串而不是日期。警告说。
答案 2 :(得分:0)
将常量类型更改为NSString。编译器告诉你在不兼容的类型之间进行分配,因为NSString不是NSDate的子类。