如果你通过手工alloc的方式分配内存实例化创建一个对象,之后你需要release这个对象,同理你也不能手工释放(release)一个能自动释放(autoreleased)的对象,因为这个样子会使你的程序崩溃。
以下是两个例子:
//string1将会自动释放
NSString *string1 = [NSString string];//不能对它进行 [string release]操作
//string2必须在用完之后手工释放
NSString *string2 = [[NSString alloc]init];
[string2 release];
在这里,你可以认为自动释放对象会在当前函数结束的时候被自动释放。
内存管理要学的还很多,现在知识列举了简单的一个例子。