Есть какой-то код, который я использую, написанный кем-то другим, у меня есть вопрос ....
NSString *c = @"test"; // "Local" string
NSString *d = [NSString alloc]initWithString:@"test"]; // "Heap" string
const char *c = "test";
return [NSString stringWithUTF8String:c]; // ??
Я не уверен, что возвращает оператор return в этом случае. Я бы написал что-то вроде ...
return [NSString alloc]initWithUTF8String:c];
или
return [NSString alloc]initWithUTF8String:c]autorelease];
Почему оператор return должен быть написан как выше?