c++函数模板的参数传递问题

2025-05-12 14:55:16
推荐回答(3个)
回答1:

你最后一个函数的声明是void Merge(LinkList &L1,LinkList &L2);表示是用引用传值,所以在调用的使用不用加&符号 Link1.Merge(Link1,Link2);这样就可以了。另外,你这个函数这么写好奇怪……

回答2:

template
struct Node
{
T data;
Node* next; //加上
};

template
void LinkList::Merge(LinkList &L1,LinkList &L2)
{
Node* p1;
Node* p2;
Node* p3; //p1,p2,p3分开定义

回答3:

merge 函数应该返回一个值(新链表的头指针)
主函数调用merge的时候,不应该带&符号。其他的没有问题