С UIKit
Apple добавила поддержку CGPoint для NSValue
, поэтому вы можете сделать:
NSArray *points = [NSArray arrayWithObjects:
[NSValue valueWithCGPoint:CGPointMake(5.5, 6.6)],
[NSValue valueWithCGPoint:CGPointMake(7.7, 8.8)],
nil];
Перечислите столько экземпляров [NSValue], сколько у вас есть CGPoint, и завершите список нулем. Все объекты в этой структуре автоматически высвобождаются.
С другой стороны, когда вы извлекаете значения из массива:
NSValue *val = [points objectAtIndex:0];
CGPoint p = [val CGPointValue];