class String {
public:
String( const char *pStr = NULL ); // 默认构造函数
String &operator = (const String &Source); // 重载赋值运算符
~String(void); // 析构函数
private:
char *m_pData; // 指向字符串的指针
};
String::String(const char *pStr)
{
if(NULL == pStr)
{
m_pData = new char[1];
m_pData[0] = '\0';
}
else
{
int len = strlen(pStr);
m_pData = new char[len+1];
strcpy(m_pData, pStr);
}
}
String & String::operator = (const String &Source)
{
if(this == &Source)
{
return *this;
}
delete [] m_pData;
int len = strlen(Source.m_pData);
m_pData = new char[len+1];
strcpy(m_pData, Source.m_pData);
return *this;
}
String::~String(void)
{
delete [] m_pData;
}
C++ String类构造方法,析构方法
最新推荐文章于 2023-05-29 08:11:25 发布