Я ищу способ получить доступ к многомерному массиву, который проходит через указатель. Я последовал за вопросом здесь (создать указатель на двухмерный массив), чтобы создать мой массив и указатель на него. Я мог бы даже передать указатель на функцию, но я не могу использовать указатель для доступа к значениям массива. Какой правильный способ получить доступ к значениям внутри функции.
Код: Выделить всё
MyArrayGenerator theArrGen = MyArrayGenerator();
const int size = 9;
int generatorArray[size][size][10];
theArrGen.generateArray(size, generatorArray[size][size+1]);
< /code>
Метод в моем классе: < /p>
void MyArrayGenerator::generateArray(int size,int* pointerToMultiDimArr)
{
int height = size + 1;
// this ptr points to the array address
int* ptr = pointerToMultiDimArr;
// not working:
ptr[1][1][1] = 123;
}
Это бросает ошибку компилятора
https://msdn.microsoft.com/de-de/library/fhexbxk9.aspx, что означает, что указатель не объявляется как массив. Мой вопрос: как должен выглядеть аргумент метода и как получить доступ к массиву в моем методе после этого. Позже я хочу, чтобы пользователь ввел размер многомерного массива и < /p>
- просто заполнитель
Подробнее здесь:
https://stackoverflow.com/questions/360 ... o-function