我正在尝试在二进制文件中组织矩阵,我不太清楚如何去做。我已成功地将二维数组写入二进制文件,然后读取该数据,但我担心我只是在我的二进制文件中写了一个长行,然后将其读回到二维数组中。但是,再说一次,我不完全确定二进制文件是如何工作的,所以我可能错了。 我想将我的二进制文件组织成一个数组图表。这可能吗? 如果我解释得不好,我道歉。如果是这样,请发表评论,以便我可以尝试更好地说明我想要做的事情。
谢谢!
答案 0 :(得分:0)
这里有一些关于如何简化序列化的建议。
要点:
class MyMatrix {
private:
std::vector<T> myData;
public:
MyMatrix(int nelems);
T & operator()(int row, int col);
T & operator()(int row, int col) const;
};
用法:
MyMatrix<int> m(200);
m(row, col) = 27;
...
serialize(m);
序列化只是序列化std :: vector(实际上是指向类型T的n个elems的指针)。如果需要,您还可以使用普通T *
加new
,并且您的Matrix无法调整大小。