您的位置:首页 > 编程语言 > C语言/C++

C++primer_第八章_IO库_学习跟踪

2016-05-25 13:47 281 查看
1.        输入输出标准库iostream、fstream、sstream;

2.        通常可以将一个派生类对象当做其基类对象使用;

3.        由于不能拷贝或给IO对象赋值,因此不能将形参或返回类型设置为流类型,进行IO操作的函数通常以引用方式传递和返回流;

4.        读写一个IO对象会改变其状态,因此传递和返回的引用不能是const的;

5.        一个流一旦发生错误,其上后续的IO操作都会失败。确定一个流对象的状态的最简单的方法是将它作一个条件来使用;

6.        将流作为条件使用,只能告诉我们流是否有效,而无法告诉我们具体发生了什么。

7.        每个输出流都管理一个缓冲区,用来保存程序读写的数据、当程序正常结束、缓冲区满、使用操作符endl、在每个输出操作后用unitbuf设置流的内部状态或将一个输出流关联到另一个流,并对关联到的那个刘进行读写操作时会导致缓冲区的刷新;

8.        操作符endl、flush、ends均能刷新缓冲区。其中flush刷新缓冲区但不输出任何额外字符,ends向缓冲区插入一个空字符,然后刷新缓冲区;

9.        输出流设置unitbuf位可使接下来的输出操作后均立即刷新缓冲区,再使用nounitbuf可回到正常的缓冲模式;

10.    当一个输入流被关联到一个输出流时,任何试图从输入流读取数据的操作都会先刷新关联的输出流;

11.    当一个fsteam对象离开其作用域时,与之关联的文件会自动关闭;

12.    以out模式打开文件会丢弃已有数据,隐式trunc模式,保留被ofstream打开的文件中已有数据的唯一方法是显示指定app或in模式;

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: