显示 std::ostream 的输入

Display inputs to std::ostream

免责声明: 我是一个完全的C++初学者,如果这个问题有类似的答案,请指导我,因为我可能错过了,不知道很多在理论上。

假设我有一个方法接受对 ostream:

的引用
printAllObjects(std::ostream& os);

我假设它对 ostream 进行了更改,以便可以将所有对象的列表打印到文件中。 (我这里可能是错的)

有什么方法可以查看它写入 ostream 的内容吗? (最好通过 cout)?

std::cout 一个std::ostream,所以只需将std::cout传递给函数,你就会看到它做了什么:

printAllObjects(std::cout);

这种灵活性正是接受对 std::ostream!

的引用的目的

其他流类型1继承自std::ostream基础包括:

  • std::ofstream(用于文件输出)
  • std::ostringstream(用于字符串输出)。

1 这并不是说 std::cout 是一种类型;不是。它是 std::ostream.

的特殊全局实例