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

Is there a null std::ostream implementation in C++ or libraries?(C++ 或库中是否有空 std::ostream 实现?)

本文介绍了C++ 或库中是否有空 std::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() ) );
...

这篇关于C++ 或库中是否有空 std::ostream 实现?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:C++ 或库中是否有空 std::ostream 实现?

基础教程推荐