作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我想制作类库,一个函数,它的参数是一个未知大小的矩阵,用户将用自己的大小创建自己的矩阵,并将它传递给这个函数来对他的矩阵进行一些操作,就像这样,将是函数
calculateDeterminantOfTheMatrix( int matrix[][])
{
some Operations to do on matrix
}
最佳答案
C 和 C++ 的内置组件对多维数组的支持不是很好。你可以传递 N
-dimension array only when you know N-1
编译时的维度:
calculateDeterminantOfTheMatrix( int matrix[][123])
然而,标准库提供std::vector
容器,这对于多维数组非常有效:在您的情况下,传递 vector<vector<int> > &matrix
将是在 C++ 中处理任务的正确方法。
int calculateDeterminantOfTheMatrix(vector<vector<int> > &matrix) {
int res = 0;
for (int i = 0 ; i != matrix.size() ; i++)
for(int j = 0 ; j != matrix[i].size() ; j++)
res += matrix[i][j];
return res;
}
作为额外的好处,您不需要将矩阵的维度传递给函数:matrix.size()
代表第一个维度,matrix[0].size()
代表二次元。
关于c++ - 如何将未知大小的二维数组传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10164263/
我是一名优秀的程序员,十分优秀!