主题:关于操作符重载,求高手指点。
classA{
...
friend bool operator<(const CString &str1,const CString &str2);
}
bool operator<(const CString &str1,const CString &str2)
{
...//实现比较2个字符串大小
}
bool SortByName(const Dev* DevStr1, const Dev* DevStr2)
{
return DevStr1->swzName<DevStr2->swzName;
}
void A::DevOrder(int iType,deque<Dev *> &devs)
{
sort(devs.begin(), devs.end(), SortByName);
}
error C2593: 'operator <' is ambiguous
怎么弄也不行,友元类重载<操作符,主要实现名字字符串的排序,排序规则自己定义,但是重载不行,高手指点下,谢谢。
...
friend bool operator<(const CString &str1,const CString &str2);
}
bool operator<(const CString &str1,const CString &str2)
{
...//实现比较2个字符串大小
}
bool SortByName(const Dev* DevStr1, const Dev* DevStr2)
{
return DevStr1->swzName<DevStr2->swzName;
}
void A::DevOrder(int iType,deque<Dev *> &devs)
{
sort(devs.begin(), devs.end(), SortByName);
}
error C2593: 'operator <' is ambiguous
怎么弄也不行,友元类重载<操作符,主要实现名字字符串的排序,排序规则自己定义,但是重载不行,高手指点下,谢谢。