qq_39677327 2022-06-28 13:27 采纳率: 94.9%
浏览 27
已结题

关于#c++#的问题:类pic有三个私有数据成员x(int),y(int),z(double),用此类描述两个对象A和B。程序中需要重载”+”完成运算符A+B

类pic有三个私有数据成员x(int),y(int),z(double),用此类描述两个对象A和B。程序中需要重载”+”完成运算符A+B。
要求:
(1)A+B相加后x为两个对象x值相乘,y为两个对象y值相加的1/2,z为两个对象z值zz。
(2)重载”+”写成成员函数,在类里声明类外定义,声明如下
pic pic::operator +(const pic &pict);
(3)定义带参数的构造函数,两个对象实参分别为(2,20,3),和(6,40,2)。

  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2022-06-28 13:45
    关注

    z为两个对象z值zz
    ==这是啥意思?
    另外相加后的值是否要修改当前类的x,y,z值,还是只是作为返回的pic对象值
    参考:

    class pic
    {
    private:
        int x,y;
        double z;
    public:
        pic() {}
        pic(int a,int b,double c) : x(a),y(b),z(c) {}
        pic operator+ (const pic&pict);
        void printData() {cout<<"x="<<x<<",y="<<y<<",z="<<z<<endl;}
    };
    
    pic pic::operator+(const pic & pict)
    {
        pic c;
        c.x = x * pict.x;
        c.y = (y+pict.y)/2;
        c.z = z + pict.z;
        return c;
    }
    int main()
    {
        pic A(2,20,3);
        pic B(6,40,2);
        pic c = A+B;
        c.printData();
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月6日
  • 已采纳回答 6月28日
  • 创建了问题 6月28日

悬赏问题

  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来