我给一个存放多数据的单链表做了一个封装
部分内容是
#include<iostream>
using namespace std;
//定义结点类型
template <class T>
struct node
{
node *next; //指针域指针
long num; //学号
char name[10]; //姓名
int sc; //语文成绩
int sm; //数学成绩
int se; //英语成绩
};
//定义线性链表类
template <class T>
class linked_List1
{
private:
node<T> *head; //头指针
public:
linked_List1(); //建立线性链表
void prt_linked_List1(); //输出链表各元素
T* inp_linked_List1(); //依次输入各元素
void ins_linked_List1(); //插入
void del_linked_List1(); //删除
};
//建立空的线性链表
template <class T>
linked_List1<T>::linked_List1()
{
head=NULL; //头指针为空
return;
}
//依次输出链表各元素
template <class T>
void linked_List1<T>::prt_linked_List1()
{
while(head)
{
cout<<head->num<<" "<<head->name<<" "<<head->sc<<" "<<head->sm<<" "<<head->se<<endl;
head=head->next;
}
}
//依次输入链表各元素
template <class T>
T* linked_List1<T>::inp_linked_List1()
{
node<T> *pS,*pE; //结点指针pS,链尾指针pE
pS=new node<T>;
cout<<"请依次输入学号,姓名,语文成绩,数学成绩和英语成绩:"<<endl;
cin>>pS->num>>pS->name>>pS->sc>>pS->sm>>pS->se;
head=NULL;
pE=pS;
while(pS->num!=NULL)
{
if(head=NULL)
head=pS;
else
pE->next=pS;
pE=pS;
pS=new node<T>;
cin>>pS->num>>pS->name>>pS->sc>>pS->sm>>pS->se;
}
pE->next=NULL;
delete pS;
return(head);
}
最后我想返回一个指针,给prt_linked_List1调用
可是行不通
请问各位大虾有没有一个好的返回指针的方法