BOOK / SOURCE & READING RECORD
Standard C++ IOStreams and Locales: Advanced Programmer's Guide and Reference
Angelika Langer; Klaus Kreft
1st edition, Addison-Wesley, 2000
Standard C++ IOStreams and Locales: Advanced Programmer's Guide and Reference
完整阅读作者公开的 streambuf: The Stream Buffer Classes 授权书摘,标注摘自印刷页84—109,含层次结构、get/put area、string/file buffer、putback。此为选摘文章,不声称逐字等同书中26页。其余第1—3章、locale部分和参考手册未取得、未读。
查看版本、实际阅读范围与原文入口 →Sources
streambuf 分层:给格式化输出换一个目的地
授权书摘 streambuf: The Stream Buffer Classes,来源标注pp.84—109;The Stream Buffer Abstraction / Output / File Stream Buffers
这篇书摘把常被视为内部细节的 streambuf 还原成明确扩展接口:流决定字符如何表示,缓冲层决定字符如何送达。get area 与 put area 的指针是理解边界的模型,不能因此推断所有文件流都采取同一种物理布局。原创练习选择容量固定的字符目的地,只实现它真正承诺的顺序写入;格式化继续由 ostream 完成,容量不足则沿标准状态机制反馈。这样可以分别观察已经写入的内容和操作是否成功,也能看出“失败”并不自动带来回滚。未读的 locale 章节不能由这段材料替代,尤其不能据此声称已经掌握国际化解析和自定义 facet 的完整设计。
相关基础课
静态与动态多态 Polymorphism、切片与 RTTIRAII:把清理责任交给对象析构函数、异常与 noexcept