```c++
hstring::hstring()
{
cstr = nullptr;
usmlen = 0x32;
hstring::hstring(const char* _str) :hstring()
{
copystr(cstr, _str);
}
hstring& hstring::operator=(const hstring& hstr)
{
copystr(cstr, hstr.cstr);
return *this;
}
hstring& hstring::operator=(const char* str)
{
cstr = nullptr;
usmlen = 0x32;
copystr(cstr, str);
return *this;
}
char* str="333333";
hstring hstr{str};
hstr="11111"
请问有人说,最后的operator=(constr char*str)可以不用写,因为前面的hstring(constr char* str)已经把它进行了类型转换,意思就是这里的hstr=1111可以直接使用operator(const hstring& hstr),请问有人能解释一下原理吗
```