|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
就是我想有一个基类,然后一个单链表类继承他,但是总是有错误 可不可以帮我看一下啊
- #include<iostream>
- using namespace std;
- struct D_Node{
- double data;
- D_Node *next;
- };
- class Link_List{
- public:
- Link_List(int num); //初始化节点个数
- virtual void Create(D_Node *pHead)=0; //创建单链表
- //virtual void D_Insert(double element,int n)=0; //插入节点
- virtual void showNode(D_Node *pHead)=0; //显示链表
- //virtual void getNode(D_Node *pHead)=0; //获取节点个数
- protected:
- D_Node node;
- int num;
- };
- Link_List::Link_List(int num){
- this->num=num;
- }
- class S_Link_List:public Link_List{ //单链表 继承于Link_List
- public:
- S_Link_List();
- S_Link_List(int num);
- D_Node *getHead(){
- return pHead;
- } //获取头节点
- virtual void Create(D_Node *pHead);
- virtual void showNode(D_Node *pHead);
- private:
- D_Node *pHead;
- };
- S_Link_List::S_Link_List(int num):Link_List(num){
- pHead=new D_Node;
- pHead->next=NULL;
- };
- void S_Link_List::Create(D_Node *pHead){
- D_Node *temp;
- D_Node *p;
- temp=pHead;
- for(int i=1;i<num;i++){
- int a;
- p=new D_Node;
- cin>>a;
- p->data=a;
- p->next=NULL;
- temp->next=p;
- }
- temp->data=NULL;
- delete temp,p;
- }
- void S_Link_List::showNode(D_Node *pHead){
- cout<<"pHead->";
- D_Node *temp;
- temp=pHead;
- while(temp->next!=NULL){
- temp=temp->next;
- cout<<temp->data<<"->";
-
- }
- delete temp;
- cout<<endl;
- }
- int main(){
- cout<<"下面创建单链表,请输入节点个数:";
- int NO;
- cin>>NO;
- cout<<endl;
- S_Link_List list(NO);
- cout<<"请输入节点数据:";
- list.Create(list.getHead());
- cout<<endl<<"下面是创建的单链表:"<<endl;
- list.showNode(list.getHead());
- system("pause");
- return 0;
- }
复制代码 |
|