bool operator==(CirDoublyList &list),比较*this和list是否相等,不能比较长度,用递归算法
bool operator==(CirDoublyList &list)
{
return innerEquals(this, list, this);
}
bool innerEquals(CirDoublyList list1, CirDoublyList list2, CirDoublyList head)
{
if (list1 == head) return list1 == head;
return list1 == list2 && (innerEquals(list1->next, list2->next, head));
}