我有一个2D数组C[100][10]
,我想逐列拆分它,并插入到1D Array中,如下所示:
C[100][10]
拆分为C[0:100][0]
,C[0:100][1]
,...,C[0:100][10]
并将插入的拆分数组插入一维数组,例如:A[100] =C[0:100][0]
我可以使用for循环来完成所有这些工作,但是要花很长时间,时间对于我的项目至关重要。 有什么办法可以解决这个问题,除了for-loop
答案 0 :(得分:2)
您应该使用子数组的数组,例如:
std::array<std::array<TYPE, 100>, 10> C;
然后,每个子数组的元素连续存储在内存中,并且操作更快。 std::array提供复制操作符
std::array<TYPE, 100> A = C[i];