C++ 将矩阵写入字符串
假设你有一个n*m的浮点数矩阵,我想有一个C++函数把这个矩阵转换成一个字符串缓冲区(使用\t作为同一行的值之间的分隔符,\n作为返回到新行),类似于:C++ 将矩阵写入字符串,c++,matrix,C++,Matrix,假设你有一个n*m的浮点数矩阵,我想有一个C++函数把这个矩阵转换成一个字符串缓冲区(使用\t作为同一行的值之间的分隔符,\n作为返回到新行),类似于: String converteMatrixToString( vector< vector<float> > ) { /* ... */ return converted; } 字符串转换器矩阵变换(向量) { /* ... */ 转换收益; } 是否有任何已有的C++函数来完成它? 如果你的矩阵是一个实
String converteMatrixToString( vector< vector<float> > )
{
/* ... */
return converted;
}
字符串转换器矩阵变换(向量)
{
/* ... */
转换收益;
}
是否有任何已有的C++函数来完成它?
如果你的矩阵是一个实际的类型,你可以使它输出可流,这是使事物“可转换为字符串”的首选方法。这将允许您将矩阵输出到std::cout
或任何其他类型的流,包括使用std::lexical\u cast
现在,您最好使用std::ostringstream
。此处为伪代码:
std::ostringstream stream;
foreach( row in matrix )
{
foreach( value in row )
stream << value << '\t';
stream << '\n';
}
return stream.str();
std::ostringstream流;
foreach(矩阵中的行)
{
foreach(行中的值)
流号。您需要编写自己的流号。