LinkedList<T> Class

Template Parameters | Constraint | Constructors & Destructor | Member Functions | Type Aliases | Member Variables

A doubly linked list of elements.

Inserting an element to the linked list in a known position is O(1) operation. Searching for an element in a linked list is O(n) operation.

Model of BidirectionalContainer , FrontInsertionSequence , BackInsertionSequence and InsertionSequence .

Definition

Line 105 of System.Base/LinkedList.cm

Template Parameters

T

Constraint

T  is  Regular

Constructors & Destructor

public LinkedList()
public LinkedList(LinkedList&& that)
public LinkedList(const LinkedList& that)
public ~LinkedList()

Member Functions

public void Add(T&& value)
public void Add(const T& value)
public inline const T& Back() const
public inline LinkedListNodeIterator<T, T&, T*> Begin()
public inline LinkedListNodeIterator<T, const T&, const T*> Begin() const
public inline LinkedListNodeIterator<T, const T&, const T*> CBegin() const
public inline LinkedListNodeIterator<T, const T&, const T*> CEnd() const
public void Clear()
private void CopyFrom(const LinkedList& that)
public inline long Count() const
public inline LinkedListNodeIterator<T, T&, T*> End()
public inline LinkedListNodeIterator<T, const T&, const T*> End() const
public inline const T& Front() const
public LinkedListNodeIterator<T, T&, T*> Insert(LinkedListNodeIterator<T, T&, T*> pos, const T& value)
public LinkedListNodeIterator<T, T&, T*> InsertFront(const T& value)
public inline bool IsEmpty() const
public LinkedListNodeIterator<T, T&, T*> Remove(LinkedListNodeIterator<T, T&, T*> pos)
public void Remove(const T& value)
public void RemoveFirst()
public void RemoveLast()
public inline LinkedListNode<T>* Tail()
public void operator=(LinkedList&& that)
public void operator=(const LinkedList& that)

Type Aliases

public typedef ConstIterator LinkedListNodeIterator<T, const T&, const T*>
public typedef Iterator LinkedListNodeIterator<T, T&, T*>
public typedef ValueType T

Member Variables

private long count
private LinkedListNode<T>* head
private LinkedListNode<T>* tail

Constructor& Destructor Details

LinkedList Constructor

public LinkedList()

Definition
Line 111 of System.Base/LinkedList.cm


LinkedList Constructor

public LinkedList(LinkedList&& that)

Definition
Line 118 of System.Base/LinkedList.cm


LinkedList Constructor

public LinkedList(const LinkedList& that)

Definition
Line 114 of System.Base/LinkedList.cm


~LinkedList Destructor

public ~LinkedList()

Definition
Line 135 of System.Base/LinkedList.cm


Member Function Details

Add Member Function

public void Add(T&& value)

Definition
Line 238 of System.Base/LinkedList.cm


Add Member Function

public void Add(const T& value)

Definition
Line 224 of System.Base/LinkedList.cm


Back Member Function

public inline const T& Back()

Definition
Line 334 of System.Base/LinkedList.cm


Begin Member Function

public inline LinkedListNodeIterator<T, T&, T*> Begin()

Definition
Line 139 of System.Base/LinkedList.cm


Begin Member Function

public inline LinkedListNodeIterator<T, const T&, const T*> Begin()

Definition
Line 143 of System.Base/LinkedList.cm


CBegin Member Function

public inline LinkedListNodeIterator<T, const T&, const T*> CBegin()

Definition
Line 147 of System.Base/LinkedList.cm


CEnd Member Function

public inline LinkedListNodeIterator<T, const T&, const T*> CEnd()

Definition
Line 159 of System.Base/LinkedList.cm


Clear Member Function

public void Clear()

Definition
Line 171 of System.Base/LinkedList.cm


CopyFrom Member Function

private void CopyFrom(const LinkedList& that)

Definition
Line 343 of System.Base/LinkedList.cm


Count Member Function

public inline long Count()

Definition
Line 163 of System.Base/LinkedList.cm


End Member Function

public inline LinkedListNodeIterator<T, T&, T*> End()

Definition
Line 151 of System.Base/LinkedList.cm


End Member Function

public inline LinkedListNodeIterator<T, const T&, const T*> End()

Definition
Line 155 of System.Base/LinkedList.cm


Front Member Function

public inline const T& Front()

Definition
Line 329 of System.Base/LinkedList.cm


Insert Member Function

public LinkedListNodeIterator<T, T&, T*> Insert(LinkedListNodeIterator<T, T&, T*> pos, const T& value)

Definition
Line 199 of System.Base/LinkedList.cm


InsertFront Member Function

public LinkedListNodeIterator<T, T&, T*> InsertFront(const T& value)

Definition
Line 184 of System.Base/LinkedList.cm


IsEmpty Member Function

public inline bool IsEmpty()

Definition
Line 167 of System.Base/LinkedList.cm


Remove Member Function

public LinkedListNodeIterator<T, T&, T*> Remove(LinkedListNodeIterator<T, T&, T*> pos)

Definition
Line 284 of System.Base/LinkedList.cm


Remove Member Function

public void Remove(const T& value)

Definition
Line 311 of System.Base/LinkedList.cm


RemoveFirst Member Function

public void RemoveFirst()

Definition
Line 252 of System.Base/LinkedList.cm


RemoveLast Member Function

public void RemoveLast()

Definition
Line 268 of System.Base/LinkedList.cm


Tail Member Function

public inline LinkedListNode<T>* Tail()

Definition
Line 339 of System.Base/LinkedList.cm


operator= Member Function

public void operator=(LinkedList&& that)

Definition
Line 129 of System.Base/LinkedList.cm


operator= Member Function

public void operator=(const LinkedList& that)

Definition
Line 124 of System.Base/LinkedList.cm