?? chapter3-12.cpp
字號(hào):
//文件名:CHAPTER3-12.cpp
#include<iostream.h>
#include<string.h>
class Student
{ int number;
static Student *ip;
Student *p;
public:
Student(){p=NULL;}
Student(int n);
static Student* get_first(){return ip;}
int get_number(){return this->number;}
Student* get_next(){return this->p;}
};
Student::Student(int n):number(n) //依據(jù)學(xué)號(hào)的大小順序?qū)W(xué)生對(duì)象插入鏈表
{ p=NULL;
if(ip==NULL)ip=this; //如果是第一個(gè)則使頭指針指向該對(duì)象
else{Student *temp=ip;
if(n<ip->number){ip=this;p=temp;}//如學(xué)號(hào)小于第一個(gè)學(xué)生對(duì)象的學(xué)號(hào)則使頭指針指向該對(duì)象
else { while(temp){
if(n<temp->p->number)
{ p=temp->p; //鏈中間對(duì)象的插入
temp->p=this; break;
}else { if(temp->p->p==NULL) //最后一個(gè)鏈的插入
{temp->p->p=this;break; } }
temp=temp->p;
}
}
}
}
Student* Student::ip=NULL;
template<class T>
class Class
{ int num;
T *p;
public:
Class(){}
Class(int n):num(n){p=NULL;}
T* insert(int n){p=new T(n);return p;}
void list_all_member(T* x)
{ T *temp=x;
while(temp) { cout<<temp->get_number()<<",";temp=temp->get_next();}
}
};
void main()
{ Class<Student> x97x(9707);
x97x.insert(23);
x97x.insert(12);
x97x.insert(38);
x97x.insert(22);
x97x.insert(32);
x97x.list_all_member(Student::get_first());
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -