[英]Use istream and ostream objects as data members of class c++
我正在尝试实现一个不能直接使用 cin 和 cout 的类。 我需要将输入和输出流的引用传递给类的构造函数,并将它们保存在一些私有字段中,以便我稍后可以在类的其他函数中访问它们。 我怎样才能实现这个功能?
为什么不简单地使用对std::istream
和std::ostream
的引用?
struct X
{
std::ostream& os;
std::istream& is;
X( std::ostream& os_, std::istream& is_):os{os_}, is{is_}{}
void Func() { os << "Hallo" << std::endl; }
void Inp() { std::string s; is >> s; os << s << std::endl; }
};
int main()
{
X x(std::cout, std::cin);
x.Func();
x.Inp();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.