deque クラスですべての要素をあるリストから別のリストに転送する関数を構築しようとしています。たとえば、リスト 1 {1,2,3} とリスト 2 {4,5} があるとします。私がやろうとしているのは、リスト 2 内のすべての要素をリスト 1 に転送し、それをリスト 1 {1,2,3,4,5} にすることです (順序付けは必要ありません)。その後、リスト 2 は空になります。しかし、私が得ている結果リストはまったく正しくありません....私のコードに何が問題なのか誰か教えてください。ありがとうございました
void meld(Deque<E>& other)
{
DNode<E>* a = _head;
DNode<E>* b = _tail;
DNode<E>* c = other.get_head();
DNode<E>* d = other.get_tail();
DNode<E>* temp = c;
b->set_next(temp);
temp->set_prev(b);
_size += other.size();
c = nullptr;
}