C++ 或库中是否有空 std::ostream 实现?

2022-01-06 00:00:00 null c++ ostream

我正在寻找一个 std::ostream 实现,它的作用类似于 /dev/null.它只会忽略流式传输到它的任何内容.标准库或Boost中是否存在这样的东西?还是我必须自己滚动?

I'm looking for a std::ostream implementation that acts like /dev/null. It would just ignore anything that is streamed to it. Does such a thing exist in the standard libraries or Boost? Or do I have to roll my own?

推荐答案

如果你有 boost,那么就有一个 null ostream &在 boost/iostreams/device/null.hpp 中可用的 istream 实现.要点:

If you have boost, then there's a null ostream & istream implementation available in boost/iostreams/device/null.hpp . The gist of it:

#include "boost/iostreams/stream.hpp"
#include "boost/iostreams/device/null.hpp"
...
boost::iostreams::stream< boost::iostreams::null_sink > nullOstream( ( boost::iostreams::null_sink() ) );
...

相关文章