我有大约 50 个 CGPoint 对象,它们描述了类似“路径”的东西,我想将它们添加到 NSArray 中。这将是一个只返回给定索引对应的 CGPoint 的方法。我不想创建 50 个变量,例如 p1 = ...; p2 = ...,依此类推。有没有一种简单的方法可以让我在使用对象初始化 NSArray 时“立即”定义这些点?
With UIKit
Apple 添加了对 CGPoint 的支持NSValue
,所以你可以这样做:
NSArray *points = [NSArray arrayWithObjects:
[NSValue valueWithCGPoint:CGPointMake(5.5, 6.6)],
[NSValue valueWithCGPoint:CGPointMake(7.7, 8.8)],
nil];
列出与 CGPoint 一样多的 [NSValue] 实例,并以 nil 结尾。该结构中的所有对象都会自动释放。
另一方面,当您从数组中提取值时:
NSValue *val = [points objectAtIndex:0];
CGPoint p = [val CGPointValue];
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)