Jurous 2020-05-10 13:35 采纳率: 0%
浏览 334
已采纳

c++运算符重载的问题,请问大佬如何对<<运算符重载函数,希望能有注释

#include
#include
using namespace std;
class Magic {
double x;
public:
Magic(double d = 0.00) :x(fabs(d)) {}//fabs是cmath头文件的函数,求绝对值的
Magic operator+(const Magic&c) { return Magic(sqrt(x*x + c.x*c.x)); }//sqrt是求平方根
friend ostream& operator<<(ostream & stream, const Magic &c);//函数需要你来实现,输出对象的数据成员值
};
int main()
{
Magic ma;
cout << ma << ", " << Magic(2) << ", " << Magic(-6) + Magic(-8) << endl;//构造函数(实参)——创建无名对象
return 0;
}

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-05-10 19:38
    关注

    friend ostream& operator<<(ostream & stream, const Magic &c)
    {
    stream << c.x;
    return stream;
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大