图书馆读者借阅排行榜,请问广州天河图书馆在哪( 五 )


}
current=NULL; //current指针恢复
}
template void DblList::Insert(const T & data){//新节点在链尾
current=new DblNode;
current->Info=data;
current->rlink=head;//注意次序
current->llink=head->llink;
head->llink->rlink=current;
head->llink=current;//最后做
}
template DblNode* DblList::Remove(DblNode* p){ // 删除结点
current=head->rlink;
while(current!=head&¤t!=p) current=current->rlink;
if(current==head) current=NULL;
else{//结点摘下
p->llink->rlink=p->rlink;
p->rlink->llink=p->llink;
p->rlink=p->llink=NULL;
}
return current;
}
template DblNode* DblList::Find(T data){ // 按结点查找
current=head->rlink;
while(current!=head&¤t->Info!=data) current=current->rlink;
if(current==head) current=NULL;
return current;
}
template DblNode* DblList::Find(int data){ // 按数据值查找结点
current=head->rlink;
int temp =current->Info.GetCode();
while(current!=head&&temp!=data){
current=current->rlink;
temp = current->Info.GetCode();
}
if(current==head) current=NULL;
return current;
}
template void DblList::Print(){ // 输出链表
current=head->rlink;
while(current!=head){
cout<Info<<'\t';
current=current->rlink;
}
cout< }
template int DblList::Length(){ // 取得链表长度
int count=0;
current=head->rlink;
while(current!=head){
count++;
current=current->rlink;
}
return count;
}
template void DblList::ShowList(){ // 输出链表各结点
int count=0;
current=head->rlink;
while(current!=head){
current->GetInfo().Show();
current=current->rlink;
}
return ;
}
template
istream& operator>>(istream& is, DblList &dlist){
int len;
T tt; // 定义局部变量读入一个结点
is>>len;
for(int i= 0 ;i is>>tt;
dlist.Insert(tt);
}
return is;
}
template
ostream& operator<<(ostream& os, DblList &dlist){
DblNode *tempP;
int len = dlist.Length();
os< tempP=dlist.head->rlink;
while(tempP!=dlist.head){ // 循环输出链表各结点
os tempP = tempP->rlink;
}
return os;
}
#include "class.h"
#include "dblist.h"
#include
class Library{ // 封装图书馆流通业务的类
DblList item; // 在馆图书链表
DblList mag; // 在馆杂志链表
DblList reader; // 读者链表
DblList loan; // 借阅信息链表
DblList manager; // 管理员信息链表
int itemNum; // 记录在馆图书数目
int magNum; // 记录在馆杂志数目
int readerNum; // 记录读者数目
int loanNum; // 记录借阅信息数目
int managerNum; // 记录管理员数目
ofstream itemFileOut; // 文件流对象,保存图书馆书籍数据
ifstream itemFileIn; // 文件流对象,读入图书馆书籍数据
ofstream magFileOut; // 文件流对象,保存图书馆杂志数据
ifstream magFileIn; // 文件流对象,读入图书馆杂志数据
ofstream readerFileOut; // 文件流对象,保存图书馆读者数据
ifstream readerFileIn; // 文件流对象,读入图书馆读者数据
ofstream loanFileOut; // 文件流对象,保存图书馆借阅信息数据
ifstream loanFileIn; // 文件流对象,读入图书馆借阅信息
ofstream managerFileOut; // 文件流对象,保存图书馆管理员数据
ifstream managerFileIn; // 文件流对象,读入图书馆管理员数据
public:
Library(); // 构造函数
~Library(); //析构函数