给定许多包含数据a(1) - a(n)的变量,使用std::fstream将这些数据写入文件的最佳方式是什么?有什么区别?
如果我有一个打开的std::fstream到一个文件,我应该使用
std::fstream << a(0) <<"\t" <<
<< a(1) <<"\t" <<
...
<< a(n) <<"\n";或
std::fstream << a(0);
std::fstream << "\t";
...
std::fstream << a(n);
std::fstream << "\n"; 是否存在功能或性能上的差异?
发布于 2021-07-28 16:42:39
std::fstream << a(0) <<"\t" <<
<< a(1) <<"\t" <<
...
<< a(n) <<"\n";basic_ostream::operator<<返回值为basic_ostream &。
上面的代码可以重写为:
std::fstream.operator<<( a(0) ).operator<<( "\t" ).operator<<( a(1) )...即一系列std::ostream.operator<<()调用。
std::fstream << a(0);
std::fstream << "\t";
...
std::fstream << a(n);
std::fstream << "\n"; 这可以重写为:
std::fstream.operator<<( a(0) );
std::fstream.operator<<( "\t" );
...即一系列std::fstream.operator<<()调用。
这两种编写输出序列的方法在功能上是相同的。
前者打字更少,更容易阅读。
https://stackoverflow.com/questions/68556995
复制相似问题