注意的问题书上讲的很详细了
下面是代码实现,但是VS有一个问题,strcpy安全性较低,虽然可以通脱编译,但是运行会报错,提示用strcpy_s()替代,但是,这里用strcpy()替代也不行,
1 //题目:如下为类型CMyString的声明,请为该类型添加赋值运算符 2 //以下为完整代码和测试用例 3 #pragma warning(disable:4996) 4 #include <iostream> 5 #include <cstring> 6 using namespace std; 7 class CMyString { 8 public: 9 CMyString(char* pData = nullptr); 10 CMyString(const CMyString& str); 11 ~CMyString(void); 12 // operator "=" 13 CMyString& operator =(const CMyString& str); 14 void print();//用来输出测试结果 15 private: 16 char*m_pData; 17 }; 18 19 //the defination of the constructor fun 20 CMyString::CMyString(char* pData) 21 { 22 if (pData == nullptr) 23 m_pData = new char[1]; 24 m_pData[0] = '