【发布时间】:2013-10-07 21:32:34
【问题描述】:
为什么我不能将 NSString[] 粘贴到 NSArray 中?我收到以下错误“ARC 不允许将间接指针隐式转换为指向 'id' 的 Objective-C 指针”
代码如下:
NSString *s1, *s2;
NSString *cArray[]={s1, s2};
NSMutableArray *dataArray = [[NSMutableArray alloc] init];
[dataArray addObject:cArray];
【问题讨论】:
-
你只能将 NSObject 的实例添加到 NSMutableArray。 NSString[] 是 NSObjects 的 C 数组。
-
顺便说一句,如果您需要初始化对象的 NSArray,请使用它,
NSArray * array = @[ s1, s2 ]; -
你也可以用 C 数组中的项目创建一个 NSArray,如下所示:
NSArray *dataArray = [NSArray arrayWithObjects:cArray count:numObjects];这不会将cArray插入到dataArray中,它会插入 objects i> 在cArray中进入dataArray -
@NicholasHart - 但他没有创建 NSArray。
标签: ios objective-c arrays nsstring nsarray