Если я создаю файл:
test.cpp:
void f(double **a) {
}
int main() {
double var[4][2];
f(var);
}
И затем запустите: g++ test.cpp -o test
Я получаю
test.cpp: In function `int main()':
test.cpp:8: error: cannot convert `double (*)[2]' to `double**' for argument `1'
to `void f(double**)'
Почему я не могу этого сделать?
Не является ли double var [4] [2] тем же, что и double ** var, а затем выделяет память?