c++Primer读书笔记(第八章 IO库)

8.1 IO类

io描述

在这里插入图片描述

8.1.1 IO对象无拷贝或赋值

不能对IO对象进行拷贝或者赋值
不能将形参或者返回类型设置为流类型
进行IO操作的函数通常用引用方式传递或者返回流
读写IO对象会改变其状态,不能用const

8.1.2 条件状态

一个错误IO的例子:

int ival;
cin>>ival;//键入abc,读操作失败

一旦一个流发生错误,后续的IO操作都会失败。所以我们需要在使用一个流之前检查它是否处于良好的状态。最简单的方法就是将它当做一个条件来使用

while(cin>>word)
	//code

查询流的状态
管理条件状态p281

8.1.3 管理缓冲输出

导致缓冲刷新(数据真正写到输出设备或文件)的原因有很多

  1. 程序正常结束
  2. 缓冲区满了
  3. endl
  4. 写到cerr的内容立刻刷新
  5. 读写流关联导致刷新

刷新输出缓冲区
6. endl 内容+换行
7. flush 内容
8. ends 内容+空字符

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值