string实现
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
class _string { public: _string(const char* str=NULL); _string(const _string& another); ~_string(); _string& operator=(const _string & rhs); private: char* m_data; }; // _string a ="abc" _string::_string(const char* str/* =NULL */) { if(str == NULL) { m_data = new char[1]; m_data[0] = '\0'; } else { m_data = new char[strlen(str) + 1]; strcpy(m_data,str); } } // _string a _string b a = b _string& _string::operator=(const _string& rhs) { if(this == &rhs) return *this; delete[] m_data; m_data = new char[strlen(rhs.m_data)+1]; strcpy(m_data,rhs.m_data); return *this; } // _string a _string b = a _string::_string(const _string& another) { m_data = new char[strlen(another.m_data)+1]; strcpy(m_data,another.m_data); } _string::~_string() { delete[] m_data; m_data = NULL; }
本博客内容均来自网络,如有雷同,是我抄袭!