1、链表含有的一般功能:
清除 、插入、尾部添加、移动指向(当前操作单元)到头/尾、前/后移一个单位 、获取链表长度、获取当前位置下标 、移动当前位置到pos 、获取当前位置的值
template <typename E> class List{
private:
void opetator = (const List &){}
List (const List&) {}
public:
List() {}
virtual List() {}
virtual void clear() = 0;
virtual void insert(const E& item) = 0;
virtual void append(const E& item) = 0;
virtual void remove() = 0;
virtual void moveToStart() = 0;
virtual void moveToEnd() = 0;
virtual void prev() = 0;
virtual void next() = 0;
virtual int length() const = 0; //长度部分,有时候可以增加当前位置的左边的长度,右边的长度
virtual int currPos() const = 0;
virtual void moveToPos(int pos) = 0;
virtual const E& getValue() const = 0; //current value};
寻找函数: