剑指offer-面试题1:赋值运算符函数

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

解析:给一个类进行运算符重载。

关键部分代码:

CMyString& CMyString::operator =(const CMyString &str)
{
if(this == &str)
return *this; //判断传入的参数和当前实例是不是同一个实例。 delete []m_pData; //是否释放实例已有的内存
m_pData = nullptr; m_pData = new char[strlen(str.m_pData)];
strcpy(m_pData,str.m_pData); return *this; //返回实例自身的引用,才能进行连续赋值
}

  

上一篇:(译)WebRTC实战: STUN, TURN, Signaling


下一篇:原创 《算法》java第四版,标准输入