学科分类
目录
C++基础

I/O流类库

C++为实现数据的输入输出定义了一个庞大的流类库,它以ios为根基类,直接派生了四个类:输入流类istream、输出流类ostream、文件流基类fstreambase、字符串流基类strstreambase。

这四个直接派生类又派生出其他的类,形成了标准I/O流类库、文件流类库和字符串流类库。它们的派生关系如下所示。

● 输入输出流类iostream,它同时继承了输入流类和输出流类。

● 输入文件流类ifstream,它同时继承了输入流类和文件流基类。

● 输出文件流类ofstream,它同时继承了输出流类和文件流基类。

● 输入输出文件流类fstream,它同时继承了输入输出流类和文件流基类。

● 输入字符串流类istrstream,它同时继承了输入流类和字符串流基类。

● 输出字符串流类ostrstream,它同时继承了输出流类和字符串流基类。

● 输入输出字符串流类strstream,它同时继承了输入输出流类和字符串流基类。

其中的每一个类都称作相应的流或流类,用以完成某一方面的功能,根据一个流或流类定义出的对象也时常称为流对象。它们之间的派生关系如图1所示。

图1 I/O类库关系

注意:图1中的虚线表示此处是虚继承,实线表示一般的继承关系。

C++流类库中定义的各种流可以供用户直接使用,它们分别包含在iostream、fstream、strstream三个头文件中,其包含情况如下所示:

(1)进行标准I/O操作时使用iostream头文件,它包含ios、iostream、istreamt和ostream等类。

(2)进行文件I/O操作时使用fstream头文件,它包含fstream、ifstream、ofstream和fstreambase等类。

(3)进行串I/O操作时使用strstream头文件,它包含strstream、istrstream、ostrstream等类。

点击此处
隐藏目录