在使用STL中的count(const )算法时报错没有找到接受const _Ty类型的左操作数的运算符
,
原因是 使用自己创建的双向链表类没有重载左运算符==
,添加上重载运算即可。
bool operator==(LinkList l1, LinkList l2) {
if(l1.count != l2.count)
return false;
/*
* 此处应该去数组1的header与数组2中的array[header]
* 如果存在,则开始遍历直到i==count全部相同则返回true
* 否则中间阶段有不相同则为false
*/
Node *header1 = l1.header;
Node *header2 = l2.FindByElement(header1->element);
int i(0);
const int count = l1.count;
while(i<count){
if(header2!=NULL){
if(header1 == header2){
header1 = header1->next;
header2 = header2->next;
}
else
{
return false;
break;
}
}
++i;
}
return true;
}