为什么包含fstream允许访问ofstream和ifstream ?

Why does including fstream allow to access ofstream and ifstream?

本文关键字:ofstream ifstream 访问 fstream 包含 许访问 为什么      更新时间:2023-10-16

当我想创建ifstream或ofstream的对象时,为什么可以包括头文件"fstream"而不包括ofstream的ifstream显式

谢谢. .

您的观察结果与继承无关。包含文件fstream本身包含ostream和istream。

标准要求<fstream>具有四个模板类和声明的八种类型;其中包括std::fstreamstd::ofstreamstd::ifstream,如标准(n3337)中27.9.1小节所规定的。


似乎你把和类的用法搞混了,但是仅仅因为在一个特定的头中有两个或两个以上的名字是可用的,并不意味着所引入的名字在继承甚至用法方面是相关的。

也;头文件的名称并不总是转换为它内部的类。标头名称是标头的名称(选择该名称是为了概括所述标头的内容),仅此而已。