我读到cout和cin是类std :: istream和std :: ostream的对象。可以有用户定义的对象,如cout和cin?
例如。 我怎么能这样做:
double
编辑1:我想定义一个可以复制cout和cin而不会弄乱内置定义的对象。
答案 0 :(得分:0)
要处理字符串,我建议使用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();
答案 1 :(得分:0)
是的,您可以创建所需的任何流。
由于流是包含源和接收器的数据流,因此您通常希望使用以下任一项:
std::stringstream
- 自行添加数据,以流形式访问std::{i,o}fstream
- 数据来自/转到文件 std::cout
和std::cin
是恰好分别连接到STDOUT和STDIN的流的特定实例,但没有理由不能创建自己的流。
您必须精确且了解您实际希望他们做什么。