通常,输出运算符应该主要负责打印对象的内容而非控制格式,输出运算符不应该打印换行符。
输入输出运算符必须是非成员函数
与iostream标准库兼容的输入输出运算符必须是普通的非成员函数,而不能是类的成员函数。否则,它们的左侧运算对象将是类的一个对象。
输入运算符必须处理输入可能失败的情况,而输出运算符不需要。
在执行输入运算符时可能发生下列错误:
1。当流含有错误类型的数据时读取操作可能失败。
2。当读取操作到达文件末尾或者遇到输入流的其他错误时也会失败。
当读取操作发生错误时,输入运算符应该负责从错误中恢复。