繁体   English   中英

在C ++中创建istream和ostream对象

[英]Create istream and ostream objects in C++

我读到cout和cin是std :: istream和std :: ostream类的对象。 用户定义的对象可以有cout和cin吗?

例如。 我该如何做这样的事情:

     ostream obj;
     obj<<"string"<<endl;

编辑1:我想定义一个对象,该对象可以复制cout和cin而不会弄乱它们的内置定义。

为了处理字符串,我建议使用std :: stringstream
std :: stringstream类是从istream派生的。

std::stringstream obj;

obj << "Hello World" << endl;
// You can convert it to a string afterwards
 std::string myString = obj.str();

是的,您可以创建所需的任何流。

由于流是具有源和接收器的数据流,因此通常需要使用以下任一方法:

  • std::stringstream自己添加数据,以流形式访问
  • std::{i,o}fstream数据来自/进入文件

std::coutstd::cin是流的特定实例,这些流恰巧分别连接到STDOUT和STDIN,但是没有理由您不能创建自己的流。

您只需要对他们实际想要他们做什么的事情有足够的了解。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM