我不明白为什么这不起作用。以下代码块在addObject行引发警告:“从不兼容的指针类型传递'taskWithText:dueDate:'的参数1”
- (id)init{
self = [super init];
if (self) {
taskListArray = [[NSMutableArray alloc] init];
[taskListArray addObject:[AFLTask taskWithText:"@Helloski" dueDate:[NSDate dateWithNaturalLanguageString:@"12/31/12"]]];
}
return self;
}
这很简单,我不明白为什么它不起作用。它似乎符合我的方法:
- (id)initWithText:(NSString *)newText dueDate:(NSDate *)newDueDate{
if(self = [super init]){
taskText = [newText retain];
taskDue = [newDueDate retain];
taskCompleted = NO;
}
return self;
}
+ (id)taskWithText:(NSString *)newText dueDate:(NSDate *)newDueDate{
return [[[AFLTask alloc] initWithText:newText dueDate:newDueDate] autorelease];
}
这里发生了什么?我对Objective-C很新(但不是一般的编程),所以我仍然试图绕过指针 - 但这不应该起作用吗?
答案 0 :(得分:4)
你要踢自己:
"@Helloski"
应该是
@"Helloski"