const char& hstring::operator[](unsigned short index)
{
if (index > uslen) //uslen对象的字符串长度
return -1;
else
return cstr[index];
}
std::cout << hstr1[100000000] << std::endl;
为什么我这行代码不输出-1呢
const char& hstring::operator[](unsigned short index)
{
if (index > uslen) //uslen对象的字符串长度
return -1;
else
return cstr[index];
}
std::cout << hstr1[100000000] << std::endl;
为什么我这行代码不输出-1呢
返回类型是char类型啊, 按字符输出的,不是按整数。
改成 std::cout<<(int)hstr1[100000000]<<std::endl;
或者先对返回值进行判断 if(hstr1[100000000] == -1) std::cout<<-1<<endl;