我知道在matlab中我们可以做Matrix(1,:)
,它为我们提供了所有列的第一行的所有元素。
无论如何在c ++中这样做?
就像我有int Matrix[3][3]={{1,1,1},{2,2,2},{3,3,3}};
我如何一起获得/或替换{1,1,1}
一样?
答案 0 :(得分:1)
对于矩阵
int Matrix[3][3]={{1,1,1},{2,2,2},{3,3,3}};
它只是一个二维数组。数组的索引以0
开头。 Matrix[0]
指的是第一个元素,即{1,1,1}
。我想这就是你要找的东西。
如果要替换矩阵的第一个元素,则需要逐个元素替换。例如,它可能是
for (int i=0; i<3; i++)
Matrix[0][i] = 4;
矩阵将是
int Matrix[3][3]={{4,4,4},{2,2,2},{3,3,3}};
在Bjarne Stroustrup的 The C ++ Programming Language 一书中,您可以找到关于实现矩阵类的一些讨论。
您也可以在互联网上找到矩阵实现。
由于我相信你对C ++比较陌生,我还建议学习STL,特别是vector
类,它基本上是一个动态数组。
如果您使用C ++ 11或更高版本,我还建议使用array
类。
更高级的方法是使用指针数组。这将允许您替换整行。但是,这将是更多的C和更少的C ++。 C ++方式是实现矩阵类。