将动态创建的数组作为参数传递
Passing a Dynamically Created Array as an Argument
有人可以帮我弄清楚如何将动态创建的数组作为函数参数传递吗?
我创建了一个 2D 动态数组,如下所示:
//matrix rows and columns
int rows=0;
int cols=0;
int** matrix = new int*[rows];
//creates the matrix
for (int i =0; i < rows; ++i)
matrix[i] = new int[cols];
我想将这个数组传递到一个带有原型的函数中,如下所示:
void readMatrix(int **matrix[], int size);
我不知道该怎么做!我不知道论点应该是什么样子,我尝试了很多不同的方法,但没有一种奏效。收到提示"期望表达式"或"参数与参数不匹配"的错误
该函数指定类型的int **matrix[]
,等效于类型 int ***matrix
。所以你需要的是另一个间接。使用&matrix
作为参数。
此外,正如评论中提到的,重新考虑使用纯数组的整个想法,以支持更现代的std::vector<>
数组。
相关文章:
- 在函数中使用 const int size 参数创建数组会在 Visual Studio 中抛出错误 C++:表达式的计
- 如何在模板函数中实例化其长度使用模板参数的数组
- 基于参数创建数组
- 我在解决此错误时遇到问题.我正在努力在主函数中传递数组
- 在 c++ 中使用模板传递数组时出现问题
- Pybind11 默认参数 numpy 数组或 None
- 传递数组结构、ofstream 和 interger 以运行
- 有没有办法根据命令行参数定义数组大小?运行时与编译时实例化?
- 在C++中传递数组作为函数参数的方法
- 函数参数绑定通过参考与传递指针传递数组的规则
- 如果数组变量在 c# 代码中定义为“ref”参数,则如何传递数组变量
- 你究竟如何通过函数的参数传递数组?
- c++ 传递数组而不是可变长度参数列表
- 如何在我的实际参数中通过引用传递数组
- 如何在函数C++中传递数组成员作为参数
- 在函数中传递数组作为引用参数
- 通过引用传递数组参数
- 在c++中传递数组作为函数参数
- 如何在构造函数中传递数组作为参数?c++
- 为什么编译器不在参数中传递数组字符 *arr[] 的大小?