我在编译代码时收到警告。警告是:对返回的局部变量“str”的引用 [默认启用] 我不知道是什么问题或我做错了什么..这是我的代码.. .
MyString& operator+(MyString &a){
char *tmp=new char[strlen(szArr)+strlen(a.szArr)+1];
strcpy(tmp, szArr);
strcat(tmp, a.szArr);
MyString str(tmp);
delete tmp;
return str;
}
MyString& operator+(char *s){
if(s)
return *this;
char *tmp=new char[strlen(szArr)+strlen(s)+1];
strcpy(tmp, szArr);
strcat(tmp, s);
MyString str(tmp);
delete tmp;
return str;
}
在这两个我得到这个警告..我不知道为什么抱怨我返回对象..