第8章 IO库
8.1 IO类
- IO对象不能拷贝或对IO对象赋值,读写一个IO对象会改变其状态,因此传递和返回的引用不能是const的。
- 刷新输出缓冲区:操纵符为endl、flush和ends;endl向缓冲区插入一个回车符,然后刷新缓冲区;flush刷新缓冲区,但不输出任何额外的字符;ends向缓冲区插入一个空字符,然后刷新缓冲区。
- unitbuf操纵符,如果想在每次输出操作之后都刷新缓冲区,可以使用unitbuf操纵符,它告诉流在接下来的每次写操作之后都进行一次flush操作;而nounitbuf操纵符则重置流,使其恢复使用正常的系统管理的缓冲区刷新机制;默认情况下,cerr是设置为unitbuf。
cout << unibuf; //设置为接下来的每次输出操作后都会立即刷新
cout << nounitbuf; //回到正常的缓冲模式
8.2 文件输入输出
8.3 string流