C++标准库中文件流类的继承关系
继承结构:
std::ios
├── std::istream
│ └── std::ifstream
├── std::ostream
│ └── std::ofstream
└── std::iostream
└── std::fstream
1 std::ios 类
作用:std::ios
是所有流类的基类,提供了流的基本功能,如状态标志(e.g.
, good()
, fail()
, eof()
)、格式化选项和缓冲管理等。
位置:所有其他流类(如 std::istream,std::ostream, std::iostream)都直接或间接地继承自 std::ios。
2 std::istream 类
作用:std::istream
继承自 std::ios
,专门用于输入操作(读取数据)。
派生类:std::ifstream
(输入文件流)继承自 std::istream
,用于从文件中读取数据。
3 std::ostream 类
作用:std::ostream
继承自 std::ios
,专门用于输出操作(写入数据)。
派生类:std::ofstream
(输出文件流)继承自 std::ostream
,用于向文件中写入数据。
4 std::iostream 类
作用:std::iostream
同时继承自 std::istream
和 std::ostream
,用于同时进行输入和输出操作。
派生类:std::fstream
(文件流)继承自 std::iostream
,用于同时读取和写入文件。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏