我正在尝试执行类似于以下代码块的操作:
tf::transform t;
initializeTransform(t);
std::ofstream f;
f.open("somefile");
f << t << std::endl;
f.close();
假设我已经正确设置了 f
和 t
当我试图写 t
至 f
,我该怎么做?我尝试了很多变体,所有变体都产生了一大堆文字,大意是 ofstream
不知道如何处理 tf::transform 对象,这并不奇怪。
有什么方法可以制作ofstream
拿任意物体?有没有我可以轻松将其转换为更有利于流式传输的格式?理想情况下,如果我转换它,我希望有一种方法可以将它可逆地转换为某种矩阵,我可以直接将其导入和导出文件。
最佳答案
实现运算符
在这种情况下,我不确定转换结构的内容,但假设它是:
struct transform { float mat[16]; }
那么实现可以是这样的:
std::ostream& operator<< (std::ostream& os, const tf::transform& t)
{
os << t.mat[0];
for(int i=1;i<16;++i) os << ',' << t.mat[i];
return os;
}
关于c++ - 将 tf::transform 对象写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17678905/