编程过程中全面考虑问题的能力

1)定义一个赋值运算符函数

    关注点:

      1)返回值的类型--是否为自身引用(*this)

          --确保可以连续赋值(链式编程)

      2)传入参数类型--是否为常量引用

          --若传入参数非引用,而是实例,那么从形参到实参会调用一次复制构造函数,会浪费内存

          --常量引用确保不会改变出入实例的状态

      3)释放自身已有的内存

          --再分配新内存之前释放自身空间,避免出现内存泄漏

      4)判断当前实例与传入参数是否一致

          --若不事先判断,传入参数与*this参数相同,那么释放掉自身内存的同时将传入参数也释放掉了

原文地址:https://www.cnblogs.com/MissZhang-154/p/13355207.html