我试图重载运算符<<
const ostream & operator<<(const ostream& out, const animal& rhs){
out << rhs.a;
return out;
}
似乎我得到了一个错误,因为我返回一个 const 并且因为第一个参数是对 ostream 对象的 const 引用。
cout << objectOfAnimal1 << objectOfAnimal2 ;
如果我将返回类型和运算符签名更改为这个,它就可以正常工作:
ostream & operator<<(ostream& out, const animal& rhs)