gpt4 book ai didi

c++ - 运算符重载<<错误

转载 作者:太空狗 更新时间:2023-10-29 20:45:35 25 4
gpt4 key购买 nike

我试图重载运算符<<

const ostream & operator<<(const ostream& out, const animal& rhs){
out << rhs.a;
return out;
}

似乎我得到一个错误,因为我返回一个常量,也因为第一个参数是对 ostream 对象的常量引用。

cout << objectOfAnimal1 << objectOfAnimal2 ;

如果我将返回类型和运算符签名更改为这个,它工作得很好:

ostream & operator<<(ostream& out, const animal& rhs)

最佳答案

你需要:

ostream & operator<<(ostream& out, const animal& rhs)

在您的代码中,您正试图修改一个const ostream 对象,因此出现错误。
它不应该是 const

关于c++ - 运算符重载<<错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10434790/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com