【发布时间】:2019-10-29 16:47:56
【问题描述】:
给定:
从std::basic_istream<> 派生的类MyStream 包含指向std::basic_istream<> 对象的指针subject。它应对tellg() 和read() 响应subject 相应响应的修改内容。
template <class T> MyStream :
public std::basic_istream<typename T::char_type, typename T::traits_type> {
std::basic::istream<...>* subject;
...
};
问题:函数tellg()、seekg() 和read() 以及状态标志函数不是虚函数。
问题:MyStream 对象如何将告诉、查找和读取传递给主体,将响应转发给调用者并修改状态标志,使其与 @987654335 的标志相对应@?
【问题讨论】:
-
诀窍是在派生流类中使用不同的/派生
streambuf。 SO: What exactly is streambuf? How do I use it?