题目描述:如下类型CMyString的声明,请为该类型添加赋值运算符函数。

  class CMyString
{
public:
    CMyString(char* pData = NULL);
    CMyString(const CMyString& str);
    ~CMyString(void);
private:
    char* m_pData;
};

  解答:

CMyString& operator=(const CMyString &str)
{
    if (this != &str)                //先判断是否是给自己赋值
    {
        delete[] m_pData;      //释放原有空间
        m_pData = new char[strlen(str.m_pData) + 1];  //开辟空间
        strcpy(m_pData, str.m_pData);           //重新赋值
    }
    return *this;    //返回自身对象
}

 

相关文章:

  • 2022-02-16
  • 2022-12-23
  • 2021-06-06
  • 2022-02-09
  • 2021-12-01
  • 2022-12-23
猜你喜欢
  • 2021-12-05
  • 2021-05-29
  • 2021-11-22
  • 2021-12-13
  • 2021-05-23
  • 2022-12-23
  • 2022-02-12
相关资源
相似解决方案