可变长度c数组

时间:2012-05-09 14:13:00

标签: objective-c arrays variables

我使用objective c来创建一个包含可变长度数组的结构。我知道你可以像这样创建一个长度为n的数组:

double array[n];

我也相信c ++你可以声明:

vector<double> array;

您不必声明数组长度。有没有办法在目标c中做类似的事情?我正在使用ARC。

先谢谢你,Ben

1 个答案:

答案 0 :(得分:3)

您只需要创建一个像NSWutableArray -

NSMutableArray *myArray = [NSMutableArray array];

[myArray addObject:....];// Add as many object as you want.

创建变长数组时只需要处理一件事,不要将nil作为对象添加,因为nil只是表示可变长度参数列表的结尾。

编辑 - 可能会跟着会帮助你 - 通过这种方式,您可以在struct -

中定义目标c数据类型
typedef struct{ 
    int numInputs; 
    __unsafe_unretained NSMutableArray *array;
} Pin;