词条 | 流库 |
释义 | § 简介 一般,若要在流中存储数据,这个流为输出流;要从流中读取数据,这个流为输入流。有的流既是输入流,又是输出流。流类形成的层次结构就构成流类库,即流库。与C 语言中的输入/输出流库一样,C++的输入输出流库不是语言的一部分,而是作为一个独立的函数库提供的。因此,在使用时需要包含相应的头文件。 输入流和输出流:在编写程序时,常要输入一些数据,在处理完数据之后,有要把结果输出. c++ 没有专门的输入输出语句,输入输出都有流库来处理.通过输出流,拥护可以从这些设备中读取数据;通过输出流则可以往设备中写数据. 输出流:我们用cout输出过数据.实质上.cout 就是输出流类ostream的派生类预定义的一个对象.它与标准输出设备相联系,以便把数据送往屏幕显示.在ostream类中,重载了<<运算符,用来处理各种内部类型的输出 输入流:c++也为输入定义了一个流类istream.这个类中重载了>>运算符,以便从先观的设备中读取数据,对应与插入运算.这里>>运算符内称为析取运算. § 文件流 C++系统通过对流类进一步扩展,提供了支持文件I/O的能力,使得程序员在建立和使用文件时,就像使用cin和cout一样方便。下图新派生的五个类用于文件处理。fstreambase类提供了文件处理所需的全部成员函数,在它的派生类中没有提供新的成员函数。 ifstream类用于文件的输入操作;ofstream类用于文件的输出操作,fstream类允许对文件进行输入/输出操作。这几个类同时继承了前面介绍的流类的基本类等级中定义的成员函数。使用这些类时,必须在程序中嵌入头文件fstream.h通过打开一个文件,可将一个流与一个文件相联结。 filedbuf是streambuf的派生类,提供对文件缓冲区的管理能力。我们一般不涉及这个类C++系统通过对流类进一步扩展,提供了支持文件I/O的能力,这使得程序员在建立和使用文件时,就像使用cin和cout一样方便。左图新派生的五个类用于文件处理。fstreambase类提供了文件处理所需的全部成员函数,在它的派生类中没有提供新的成员函数。ifstream类用于文件的输入操作;ofstream类用于文件的输出操作,fstream类允许对文件进行输入/输出操作。这几个类同时继承了前面介绍的流类的基本类等级中定义的成员函数。使用这些类时,必须在程序中嵌入头文件fstream.h通过打开一个文件,可将一个流与一个文件相联结。在ios类中定义的一组枚举常量名给出了可允许的文件打开方式: in----------------------- 打开一个文件进行操作 out---------------------- 打开一个文件进行写操作 ate---------------------- 文件打开时将文件指针指向文件尾 app---------------------- 添加,输出的内容添加到文件尾 trunc-------------------- 若文件存在,清除原有内容,将长度截为0 nocreat------------------ 若文件不存在,打开操作失败 |
随便看 |
百科全书收录594082条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。