我的项目中有一个抽象类,它的派生类用于不同位置的输入/输出。它有虚拟方法read和write。
virtual unsigned read(void *buf, unsigned len) = 0;
virtual void write(const void *buf, unsigned len) = 0;
我需要一种在 std 流(std::istream 和 std::ostream)和此类之间的适配器,以将输入/输出重定向到这些方法。
因此,例如,如果
mystream << "some output";
被调用,它会调用write方法。
我想我应该重载std::istream和std::ostream或std::streambuf,但不确定哪些方法。
实现这一点的更好方法是什么?