Инициировать до нуля статический 2D-массив при его объявлении

Я разрабатываю приложение iOS 5.0+ с последним SDK.

Я должен объявить инициализацию частного 2D-массива таким образом, потому что я собираюсь использовать его для функции C ++:

@implementation MyClass int myArray[NSFirstDim][NSSecondDim] = 0; <-- Error here ... - (id)init { ... } ... @end 

Но я не могу инициализировать 0 таким образом, потому что получаю следующее сообщение:

 Array initializer must be an initializer list 

Как я могу инициализировать все значения до нуля?

Или я могу использовать 2D динамический массив …

использование

 int myArray[NSFirstDim][NSSecondDim] = {0}; 

это мощное поведение от C, где вы добавляете значения из начала и останова (другие), инициализируются на 0.

В этом примере кода,

 int arr[4][3]={1,2,3}; for (int i=0; i<4; i++) { for (int j=0; j<3; j++) { NSLog(@"%d",arr[i][j]); } } 

Выход: 1,2,3,0,0,0, ….

 int myArray[NSFirstDim][NSSecondDim] = {0}; 
 int myArray[NSFirstDim][NSSecondDim] = {0}; 

Этот оператор инициализирует все элементы 2D-массива равными нулю.

Взгляните на инициализацию массивов на C ++ , я нашел это весьма полезным.

Это также может работать: int myArray [NSFirstDim] [NSSecondDim] = {};

Как насчет этого int myArray [2] [1] = {{0}, {0}};