Полагаю, вы упростили свой пример для целей вопроса, но, похоже, вы выполняете много ненужной работы.Код в вашем вопросе может быть переписан как:
-(NSArray *) calcRose : (float) theta
{
int cWidth = 320;
int cHeight = 240;
return [NSArray arrayWithObjects:[NSNumber numberWithFloat:cWidth],[NSNumber numberWithFloat:cHeight],nil];
}
initWithCapacity
, и использование изменяемого массива не даст вам ничего, кроме головной боли.Если вы хотите использовать изменяемый массив, просто создайте с помощью [NSMutableArray array]
, но не похоже, что вы добавляете столько объектов, поэтому предложенный мною метод будет лучше.
Этот метод возвращает автоматически освобожденный массив, поэтому ваш оператор вызова может быть просто
NSArray *tt = [self calcRose:3];