Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c Can';当使用self.array或任何.notation时,无法使数组工作_Objective C_Xcode_Properties_Nsmutablearray - Fatal编程技术网

Objective c Can';当使用self.array或任何.notation时,无法使数组工作

Objective c Can';当使用self.array或任何.notation时,无法使数组工作,objective-c,xcode,properties,nsmutablearray,Objective C,Xcode,Properties,Nsmutablearray,在处理一个简单的项目时,当使用类中的属性与数组对话时,我的NSMutableArrays不会插入和对象。因此,我转到Xcode中的命令行,以及从main在main work中创建的任何数组,然后如果我使用.notation与数组属性对话,我会得到无法识别的错误选择器。我查找了一些东西,并尝试使用一种方法添加对象,如 -(void)addObjectsToArray{ MyClass *myObject = [[MyClass alloc] init]; [list addObject:myObj

在处理一个简单的项目时,当使用类中的属性与数组对话时,我的NSMutableArrays不会插入和对象。因此,我转到Xcode中的命令行,以及从main在main work中创建的任何数组,然后如果我使用.notation与数组属性对话,我会得到无法识别的错误选择器。我查找了一些东西,并尝试使用一种方法添加对象,如 -(void)addObjectsToArray{

MyClass *myObject = [[MyClass alloc] init];
[list addObject:myObject];
[myObject release];

OtherClass *anotherObject = [[OtherClass alloc] init];
[list addObject:anotherObject];
[anotherObject release];
}

但每当我要求我的数组添加Object或insertObject时,我都会得到无法识别的选择器错误(即当我尝试从任何地方使用self.array或ANY.array时)

这是我的类。没有代码,只有属性。我正在尝试使用newObject.array,然后对其调用insertObject,但没有成功

进口 @接口检查数组:NSObject

@属性(复制,非原子)NSMutableArray*数组

@结束

总的来说,我有

CheckArray*newObject=[[CheckArray alloc]init]

    newObject.array  = [[NSMutableArray alloc]init];

    if (newObject.array) {
        [newObject.array insertObject:testString atIndex:0];
    }

    NSLog(@" the new array is %@“, newObject.array);
日志显示2015-01-19 00:14:32.940测试多阵列[16647:518334]新阵列正在使用中( )所以它是存在的,但是

下面是一个错误,为什么它不能识别insertObject?如果你能解释的话,谢谢你

2015-01-19 00:05:59.884测试多阵列[16608:513530]-[\uu NSArrayI insertObject:atIndex:]:发送到实例0x1001068d0的无法识别的选择器
2015-01-19 00:05:59.885测试可变数组[16608:513530]***由于未捕获的异常“NSInvalidArgumentException”终止应用程序,原因:'-[\uu NSArrayI insertObject:atIndex::]:未识别的选择器发送到实例0x1001068d0'

\uu NSArrayI
表示不可变数组,不可变数组不声明用于改变其内容的方法。您传递给.array的某个地方是
NSArray
而不是
NSMutableArray
因为您使用
copy
声明您的属性,它将把它变成不可变的,即NSArray。尝试将
copy
修改为
strong


对于您的情况,您正在使用一个NSMutableArray指针来引用一个NSArray。这就是您无法插入的原因。

谢谢您这是problem@PetrosVoutsanesis不客气。通常情况下,如果答案正确,按复选标记将答案标记为已接受是很好的谢谢您是现在可以使用“强”而不是“复制”