输出运算符<<
通常情况下,输出运算符的第一个形参是一个 非常量ostream对象的引用
。之所以 ostream
是非常量是因为向流写入内容会改变其状态;而该形参是引用是因为我们无法直接复制一个 ostream
对象。
第二个形参一般来说是一个 常量的引用,该常量是我们想要打印的类类型。第二个形参是引用的原因是我们希望避免复制实参;而之所以该形参可以是常量是因为(通常情况下)打印对象不会改变对象的内容。
为了与其他输出运算符保持一致,operator<<
一般要返回它的 ostream
形参。
通常我们需要在类中重载 <<
以避免查看成员时输出操作过于繁琐:
class A {
friend ostream&