Инициализация дву-трехмерного массива по переменной - невозможно ?

 
int A=10;
int B=20;
double C[A][B];
Почему такое не работает ? Можно ли задать второе измерение с помощью переменной или это ограничение никак не обойти ?
 

Размерность массива в MQL4 инициализируется константой. Индексы элементов массива могут вычисляться.

 
Loknar:
int A=10;
int B=20;
double C[A][B];

Почему такое не работает ? Можно ли задать второе измерение с помощью переменной или это ограничение никак не обойти ?
Если изменить Ваш код следующим образом,
#define A 10
#define B 20
 
double C[A][B];
то все будет работать.
Первое измерение массива можно изменять/задавать с помощью функции ArrayResize, н-р,
ArrayResize(C,20); //новый размер массива 40 элементов: C[20][20].
К сожалению, второе измерение массива динамически изменять нельзя.
Но если очень хочется работать с многомерными динамическими массивами, то можно воспользоваться
библиотекой Zhunko: 'ZH_Dynamic_Arrays_Lib'
 


Добавлю в MQL4

массивы могут быть трехмерные и 4х мерные . ну вдруг кто то не знает... а вот 5ти мерные уже нет



#define A 10
#define B 20
#define C 30
#define E 50
 
 
double m3[A][B][C];
double m4[A][B][C][E];
Причина обращения: