我被要求创建一个包含 5 行和未知列的矩阵。我的老板希望我使用一维缓冲区。由 5 行缓冲区连接。我不明白这是什么意思,请有人给我一个简单的例子!
有了数组我可以做
double[][] arr = new double[5][someNumber];
但他说,那么规模将受到限制。
所以我不知道他使用双缓冲区是什么意思,我不是很好@C++
非常感谢,举个例子就好了!
我被要求创建一个包含 5 行和未知列的矩阵。我的老板希望我使用一维缓冲区。由 5 行缓冲区连接。我不明白这是什么意思,请有人给我一个简单的例子!
有了数组我可以做
double[][] arr = new double[5][someNumber];
但他说,那么规模将受到限制。
所以我不知道他使用双缓冲区是什么意思,我不是很好@C++
非常感谢,举个例子就好了!
对于R
行和C
列声明double arr[R * C]
,并且arr[i * C + j]
是单元格处的元素[i, j]
。
这可以推广到任意维度。
展平这样的数组可能是一个非常有用的优化,尤其是当您使用动态数组时std::vector
,您可以获得一个动态数组,而不是每行一个动态数组。
听起来你在说
double *arr[5];
for(unsigned int x = 0; x < 5; ++x)
{
arr[x] = new double[someNumber];
}
因为,您肯定知道您有 5 个,而我的假设是未知部分,这就是您所指的方式。