📄 llist.h
字号:
#ifndef LLIST_H
#define LLIST_H
// Double-Linked List implementation
#include"link.h"
class LList{
private:
Link* head;
Link* tail;
Link* fence;
int leftcnt;
int rightcnt;
void init(){
fence = tail = head = new Link;
leftcnt = rightcnt = 0;
}
void removeall(){
while ( head != NULL ){
fence = head;
head = head->next;
delete fence;
}
}
public:
LList (){ init(); }
~LList() { removeall();}
void clear(){ removeall(); init(); }
bool insert(Record&);
bool append(Record&);
bool remove(Record&);
//set functions;
void setStart(){
fence = head;
rightcnt +=leftcnt;
leftcnt = 0;
}
void setEnd(){
fence = tail;
leftcnt +=rightcnt;
rightcnt = 0;
}
void prev();
void next(){
if( fence != tail ){
fence = fence-> next;
rightcnt--;
leftcnt++;
}
}
int leftLenth() const { return leftcnt; }
int rightLenth() const { return rightcnt;}
bool setPos(int pos);
Record& getValue(void) const{
return fence->next->rec;
}
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -