Я изучаю Программирование Какао для Mac OS X Аарона Хиллеграсса и пришел к тому, чего я не понимаю. На странице 150-151 он создает объект, освобождает его и затем использует его снова. Например:
- (void) someMethod
{
NSMutableArray *array = [[NSMutableArray alloc] init];
NSString *str = [[NSString alloc] initWithString:"This is a string."];
[array addObject:str];
[str release];
int x = [array indexOfObjectIdenticalTo:str];
NSLog(@"the index of %@ in the array is %d", str, x);
}
Как это работает, если объект был освобожден? Является ли объект действительным до тех пор, пока метод не будет завершен или не установлен на nil
?