我是一个OOP的初学者,所以这可能是一个愚蠢的问题!未指定大小的多维数组作为实例变量?
我想用多维CARRAY作为一个Objective-C类的实例变量,并且也希望能够指定它的大小在运行时,对象初始化方法中:
@interface ArrayClass : NSObject {
int array[][];
}
-(id)initWithSizeX:(int)sizeX sizeY:(int)sizeY;
@end
这会产生错误“实例变量”数组'具有未知大小。“
我似乎只能使用数组,如果我声明它具有初始大小,例如[20] [20]例如 - 但这当然击败了点,因为我希望它在运行时决定!
我的猜测是,这是必要的,因为物体内存占用需要事先知道吗?
有没有人知道我是否可以尝试这种方式?是否有任何解决方法可以让我在运行时调整数组的大小?还是我完全用错误的方式去解决这个问题?
我知道有很多关于多维数组的主题,但我似乎无法找到任何回答我的问题的东西!
如果它需要是动态的,那么也许做到这一点。 [NSMutableArray](https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSMutableArray_Class/Reference/Reference.html)可能会给你你正在寻找的东西,而留在Obj-C土地。您可能需要通过索引算术来完成多维度的工作,但这在两个维度上足够简单。它有*是否是C阵列? – WhozCraig