我对Objective C编程非常陌生。出于某种原因,下面箭头中指示的行给了我一个" ARC禁止显式消息发送' release'"信息。有人可以解释一下我在这里做错了吗?
int main(int argc, char *argv[]) {
@autoreleasepool {
Person *morgy;
morgy = [Person alloc];
morgy = [morgy init];
[morgy setWeight: 145];
[morgy setAge: 19];
[morgy print];
[morgy release]; // <------
}
return 0;
}
答案 0 :(得分:1)
ARC是自动引用计数。当没有任何东西保留它时,它会自动为您释放对象。明确地释放它会破坏目的并打破整个引擎。所以,这是不允许的。
简单地删除该行,在ARC中没有必要。