String 类基本函数的实现self
void strcpy(char* dest, const char* src)
{
int i=0;
while(src[i]!='\0')
{
dest[i] = src [i];
i++;
}
dest[i] = '\0';
}
int strlen(const char* dest)
{
int i=0;
while(dest[i]!='\0')
{
i++;
}
return i;
}
String::String(const char* str)
{
if(NULL == str)
{
m_data = new char[1];
*m_data = '\0';
}
else
{
int length = strlen(str);
m_data = new char[length+1];
strcpy(m_data, str);
}
}
String::String(const String &other)
{
int length = strlen(other.m_data);
m_data = new char[length+1];
strcpy(m_data,m_data);
}
String::~String(void)
{
delete []m_data;
}
String& operator=(const String& other)
{
if(*this == other)
{
return *this;
}
else
{
int length = strlen(other.m_data);
m_data = new char[length+1];
strcpy(m_data, other.m_data);
return *this;
}
}
关注公众号 海量干货等你

浙公网安备 33010602011771号