class MyString()
{
private:
char *str;
public:
MyString(char *s)
{
str = new char(strlen(s)+1);
strcpy(str,s);
}
~MyString()
{
delete[]str;
}
MyString &operator = (MyString &string)
{
if(this == &string)
{
return *this;
}
if(str != NULL)
{
delete[] str;
}
str = new char(strlen(string.str)+1);
strcpy(str,string.str);
return *this;
}
MyString &operator + (MyString &string) //重载+运算符号,覆盖原来属性的内容
{
char *temp = str;
str = new char(strlen(temp)+strlen(string.str)+1);
strcpy(str,temp);
delete[]temp;
strcat(str,string.str);
return *this;
}
}
C++重载string类的+=运算符号
最新推荐文章于 2023-06-29 09:29:39 发布