Если я выделил объект в методе «getASprocket» и назвал его таким образом, будет ли здесь утечка?Управление памятью и производительность
Sprocket *sprock = [Sprocket getASprocket];
// store this returned value as an ivar
ivarSprock = [sprock retain];
// release the originally acquired object
[sprock release];
Объект Звездочка выделяется и возвращается таким образом:
– (Sprocket *)getASprocket {
Sprocket *sprocket;
sprocket = [[Sprocket alloc] init];
return [sprocket retain];
}
Кроме того, будет изменяющийся от '[sprocket retain];'
внутри метода «aSprocket», чтобы 'return [sprocket autorelease];'
сделать хуже потери производительности?
Похоже, вы сделали опечатку; «-» должен быть «+», поскольку вы используете его как метод класса, а не метод экземпляра. – Michael
@Michael, в то время как ваш комментарий верен, в большинстве случаев это технически корректно даже с "-" –