请为CMyString类型编写构造函数copy构造函数析构函数和赋值运算符函数。
Posted shfanzie
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请为CMyString类型编写构造函数copy构造函数析构函数和赋值运算符函数。相关的知识,希望对你有一定的参考价值。
如下为类型CMyString的声明,请为该类型编写构造函数、copy构造函数、析构函数和赋值运算符函数。
1 class CMyString 2 { 3 public: 4 CMyString(const char* pData = nullptr); 5 CMyString(const CMyString& str); 6 ~CMyString(void); 7 8 CMyString& operator = (const CMyString& str); 9 10 void Print(); 11 12 private: 13 char* m_pData; 14 };
完整代码如下:
1 #include<cstring> 2 #include<cstdio> 3 4 using namespace std; 5 6 class CMyString 7 { 8 public: 9 CMyString(const char* pData = nullptr); 10 CMyString(const CMyString& str); 11 ~CMyString(void); 12 13 CMyString& operator = (const CMyString& str); 14 15 void Print(); 16 17 private: 18 char* m_pData; 19 }; 20 21 CMyString::CMyString(const char *pData) 22 { 23 if (pData == nullptr) 24 { 25 m_pData = new char[1]; 26 m_pData[0] = ‘