我需要存储一些整数值作为数组的内容。但当我试图这样做时,它会发出警告, 传递'addObject'的参数1使得整数指针没有强制转换。 显然,该值不存储在数组中。 这是代码。
NSUInteger i;
for (i=0;i<5;i++){
[array addObject:i];}
答案 0 :(得分:10)
NSArray
- s无法存储非id
个对象。您必须将其装入NSNumber
:
NSUInteger i;
for (i=0;i<5;i++) {
[array addObject:[NSNumber numberWithUnsignedInteger:i]];
}
或使用带有自定义回调的CFArray
(但您牺牲了性能的可读性),或使用std::vector<NSUInteger>
(但您需要使用Objective-C ++)。