String:operator unsigned int () const是什么意思?该如何处理
String::operator unsigned int () const是什么意思?
String::operator unsigned int () const //????????????
{
unsigned int uiKey = 0;
for (int i = 0; i < m_iLength; i++)
uiKey += (uiKey < < 5) + m_acText[i];
return uiKey;
}
------解决方案--------------------
查C++ Primer,用户自定义类型转换符。
------解决方案--------------------
类型转换函数
形式为
operator type-name()
将类类型 转换为 type_name ,必须是成员函数, 这个函数不能有返回类型,但必须写return 语句.
------解决方案--------------------
转换函数
可以把String对象转换为unsigned int
------解决方案--------------------
const
类的成员函数尾巴上有const。
意思就是说,
这个函数,不修改任何成员变量。
也就是说,它最多也就读读成员变量。
String::operator unsigned int () const //????????????
{
unsigned int uiKey = 0;
for (int i = 0; i < m_iLength; i++)
uiKey += (uiKey < < 5) + m_acText[i];
return uiKey;
}
------解决方案--------------------
查C++ Primer,用户自定义类型转换符。
------解决方案--------------------
类型转换函数
形式为
operator type-name()
将类类型 转换为 type_name ,必须是成员函数, 这个函数不能有返回类型,但必须写return 语句.
------解决方案--------------------
转换函数
可以把String对象转换为unsigned int
------解决方案--------------------
const
类的成员函数尾巴上有const。
意思就是说,
这个函数,不修改任何成员变量。
也就是说,它最多也就读读成员变量。