Звонок на
[NSNumber numberWithInt:intVariable]
концептуально эквивалентно
[[[NSNumber alloc] initWithInt:intVariable] autorelease]
так что да, в приведенном вами примере было бы проще использовать -numberWithInt:
.
NSMutableArray *array=[[NSMutableArray alloc] init];
[array addObject:[NSNumber numberWithBool:boolVariable1]];
[array addObject:[NSNumber numberWithWithBool:boolVariable2]];
[array addObject:[NSNumber numberWithInt:intVariable]];
[array addObject:[NSNumber numberWithFloat:floatVariable]];
[array writeToFile:[self dataFilePath] atomically:YES];
[array release];
В противном случае вам нужно будет добавить вызов -autorelease
для каждого аргумента, передаваемого в массив.