namespace C6 { class ListHead { private ListHead next; private ListHead prev; private T data; public T GetData() { return this.data; } public void Del() { this.next.prev = this.prev; this.prev.next = this.next; } public void AddTail(ListHead pnew) { var prev = this.prev; var next = this; next.prev = pnew; pnew.next = next; pnew.prev = prev; prev.next = pnew; } public void AddHead(ListHead pnew) { var prev = this; var next = this.prev; next.prev = pnew; pnew.next = next; pnew.prev = prev; prev.next = pnew; } } }