Objective-C ++中的二维数组声明错误

时间:2013-03-04 11:01:33

标签: c++ ios objective-c

我正在使用最新的SDK开发iOS应用程序。

我想在Objective-C ++中创建一个int [][],但我不知道该怎么做:

这是MyClass.mm

的一部分
static const int MAX_NUM_DETECTIONS = 10;
static const int PATCH_SIZE = 100;

@interface MyClass ()
{
    int[MAX_NUM_DETECTIONS][PATCH_SIZE*PATCH_SIZE] _results;
}

@end

这行代码会产生这两个错误:

预期会员名称或';'在声明说明符之后。
预期';'在声明清单的末尾

我在_字符下收到错误。

如何声明和初始化该2D阵列?

3 个答案:

答案 0 :(得分:5)

您需要将[][]括号放在变量名称后面:

例如:

int multiArr[3][4];

答案 1 :(得分:4)

你需要

int _results[MAX_NUM_DETECTIONS][PATCH_SIZE*PATCH_SIZE] ;

答案 2 :(得分:1)

声明2d数组的正确方法是在变量名后加两个方括号[][],所以在你的情况下它将是

int  _results[MAX_NUM_DETECTIONS][PATCH_SIZE*PATCH_SIZE];