Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/127.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 编写自定义基本\u streambuf_C++_Streambuf - Fatal编程技术网

C++ 编写自定义基本\u streambuf

C++ 编写自定义基本\u streambuf,c++,streambuf,C++,Streambuf,在实现我自己的streambuf一段时间后,我问自己是否可以为基本的_streambuf(如double)使用不同的类型。这里有什么经验和用例吗?您没有理解streambuf的要点。它是std::stream的后端。前端由操作员提供。对于double,它们被重载。前端将任何类型转换为字符,后端执行I/O(到文件、屏幕、网络等)后端不使用字符,而是使用双字符怎么样。如果不需要存储字符该怎么办。@Gustavo:您将如何向这样的后端编写std::string?请记住,std::streambuf是整

在实现我自己的streambuf一段时间后,我问自己是否可以为基本的_streambuf(如double)使用不同的类型。这里有什么经验和用例吗?

您没有理解
streambuf
的要点。它是
std::stream
后端。前端由
操作员提供。对于
double
,它们被重载。前端将任何类型转换为字符,后端执行I/O(到文件、屏幕、网络等)

后端不使用字符,而是使用双字符怎么样。如果不需要存储字符该怎么办。@Gustavo:您将如何向这样的后端编写
std::string
?请记住,
std::streambuf
是整个
库的一部分。如果您的用例与
的典型用法差异太大,您会发现调整
的好处有限。因此,iostream环境中只允许使用字符是正确的,而且它从来没有打算使用除字符以外的其他类型?@Gustavo:嗯,有
wchar\u t
。但是是的,这都是关于字符的。@Gustavo任何
T
对于
std::char\u traits
有合理成员的
streambuf
类要解决的实际问题是什么?为什么需要它将数据存储在
双精度
?请阅读并思考它与这个问题的关系。