cpp_AssignmentO - 8BitsCoding/RobotMentor GitHub Wiki

class collar;
class dog {
    collar* pCollar;
    dog& operator= (const dog& rhs) {
        if(this == &rhs)
            return *this;

        collar* pOrigCollar = pCollar;
        pCollar = new collar(*rhs.pCollar);
        delete pOrigCollar;

        return *this;
    }
}
class dog {
    collar* pCollar;
    dog& operator=(const dog& rhs) {
        *pCollar = rhs.pCollar;
        return *this;
    }
}