我是C ++的新手,我被要求进行类工作以执行一个函数,该函数采用双链表并将其元素复制到单链表中,然后将其返回,但是,只有在以下情况下,我才获得此函数的声明:我将函数设置为不返回任何东西,或者给了我下面的错误,我理解了链表代码,但是我不理解使用指针和返回部分,有人可以向我解释一下吗?以及如何使其工作?我无法在网上找到对此的解释,或者我搜索的关键字错误。任何帮助表示赞赏。
template <class T>
SinglyLinkedList<T>* DoublyLinkedList<T>:: Function() {
SinglyLinkedList<T> list1;
DLLnode<T>*p = head;
while (p!=NULL) {
list1.addtoHead(p->value);
p=p->next;
}
return list1;
}
//error: cannot convert ‘SLL<int>’ to ‘SLL<int>*’ in return
1)为此使用指针是愚蠢的。但这就是您被告知要做的。
SinglyLinkedList<T> DoublyLinkedList<T>::Function()