我有4个大小为3的数组。在我的代码中,我生成了一些我放在这些数组中的值。我想将它们保存在输出文件中。
此类实施的最优雅和最佳做法是什么?我使用双数组来存储它们和一个for循环来通过2D数组并保存它们,但我不喜欢这种方法。
我喜欢将所有arr1,arr2,arr3,arr4放在一个字符串数组中,然后遍历数组获取字符串,该字符串指的是具有三个值的double数组。希望我没有让那些令人困惑。 这就是我做的......
double arr1[3], arr2[3], arr3[3], arr4[3];
//Omitted code that generates content of arrays
double coordinates[4][3] = {{arr1[0], arr1[1], arr1[2]},
{arr2[0], arr2[1], arr2[2]},
{arr3[0], arr3[1], arr3[2]},
{arr4[0], arr4[1], arr4[2]}};
for(int i = 0; i<4; i++)
{
for(int j = 0; j<3; j++)
{
output << coordinates[i][j]; //writing ith character of array in the file
if(j<2)
output<<",";//separate coordinates by a comma
else
output<<"\n";
}
}
另外,在这种情况下,矢量怎么样?我从来没用过它们,所以我对它们并不熟悉。 谢谢。
答案 0 :(得分:0)
std::array
是首选构造。这就是你如何使用它:
#include <iostream>
#include <array>
int main()
{
std::array<int, 3> arr1, arr2, arr3, arr4;
std::array<std::array<int, 3>, 4> coordinates{{arr1, arr2, arr3, arr4}};
}