Как вернуть двумерный массив из функции c

//работает только если указана размерность массива x[5][4]

Чтобы значения row, col определяли размерность массива x в функции.

Подскажите пожалуйста, как задать размерность массива через вызов функции, где ошибка?

Можно сделать через статику, так и через динамику. Но в этой задачи я бы стал использовать динамику.

Я изучаю интерфейс Boost Python, особенно при представлении функции C ++ для Python. Теперь у меня проблема с тем, как вернуть двумерный массив функции C ++ на сторону Python. Например, у нас есть следующий код C ++:

Я знаю, что есть способ вернуть двумерный массив в Python, используя ctypes , Но моя проблема в том, как использовать boost::python::numeric::array
сделать это, или если есть какие-либо другие решения без использования сторонних библиотек. Я действительно ценю, если кто-нибудь может мне помочь.

как я могу вернуть двухмерный массив из функции в С++?

4 ответа

Используйте std::vector > вместо использования массивов стилей C.

-1 Codeanu [2010-11-13 13:34:00]

вы должны вернуть его как return **arr

используя вектор STL или другой STL-контейнер, это один из способов сделать это.

Другим способом было бы вернуть указатель на указатель, так как двумерный «массив» — это не более чем указатель на указатель, поэтому на практике он выглядит так:

Примечание: в 99% случаях вам нужно знать, насколько велик массив, поэтому вам также нужно вернуть фактический размер массива. для этого вы можете использовать параметры функции, например

Читайте также:  Игры бродилки для детей 3 лет