神厨小福贵! 2022-01-28 21:40 采纳率: 100%
浏览 37
已结题

C++类中重载等于号的问题


    SeqList& operator=(const SeqList& seq) 
    {
        if (this != &seq)
        {
            maxsize = seq.maxsize;
            cursize = seq.cursize;
            memcpy(data, seq.data, sizeof(int) * cursize);
        }
        return *this;
    }

在if语句中我知道哪个判断语句要说的是判断调用这个函数的对象以及参数seq是否相等 那么this是个类的指针 哪个引用是个别名 我觉得这玩意类型都对不上号 这玩意是怎么实现比较的

  • 写回答

2条回答 默认 最新

  • _GX_ 2022-01-28 21:53
    关注

    &seq是取seq对象的地址,再和this指针比较。如果两个对象地址相同,说明是同一个对象,就没必要赋值,否则把seq对象的数据拷贝到这个对象里

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月5日
  • 已采纳回答 1月28日
  • 创建了问题 1月28日

悬赏问题

  • ¥500 求华为P30PRO手机硬盘数据恢复
  • ¥15 关于#vscode#的问题:ESP32开发板对接MQTT实现小灯泡的开关
  • ¥15 TMC2209串口模式下读取不到寄存器的值串口助手蓝色字体是发过去的消息,绿色字体是收到的消息,第二行发送读取寄存器的指令但是没有读取到寄存器的值串口助手如下图:接线如下图,如何解决?
  • ¥15 高通安卓11提取完整线刷包软件,或者优博讯dt50顺丰刷机包
  • ¥20 C,有个译码器,换了信道就跑不出原来数据
  • ¥15 MIMIC数据库安装问题
  • ¥60 基于JTag协议开发Fpga下载器上位机,哪位大🐂有偿指导?
  • ¥20 全书网Java爬取数据
  • ¥15 怎么获取红包封面的原始链接,并且获取红包封面序列号
  • ¥100 微信小程序跑脚本授权的问题