Microsoft.VisualC.StlClr.Generic Namespace

Contains the classes, interfaces, and iterators that are used to implement the generic interface to the STL/CLR Library. By using this generic interface, other .NET languages, such as C# and Visual Basic, can call code that is written using STL/CLR.

Classes

ConstContainerBidirectionalIterator<TValue>

Defines an iterator that can access elements in a container in the forward direction by using the increment operator and in the backward direction by using the decrement operator. The element that the iterator points to cannot be modified. Bidirectional iterators can be used anywhere that a constant input or constant output iterator is required.

ConstContainerRandomAccessIterator<TValue>

Provides an iterator that supports the following operations: moving forward one position by calling operator++, moving backward one position by calling operator--, accessing an element by using operator[], and accessing an element by using pointer arithmetic. The element pointed to by the iterator cannot be modified.

ConstReverseBidirectionalIterator<TValue>

Defines an iterator that accesses elements in a container in the reverse direction. Elements can be accessed in the forward direction by using the decrement operator and in the backward direction by using the increment operator. The element that the iterator points to cannot be modified. Constant reverse bidirectional iterators can be used anywhere that a constant reverse input or constant reverse output iterator is required.

ConstReverseRandomAccessIterator<TValue>

Provides an iterator that supports the following operations: moving forward one position by calling operator--, moving backward one position by calling operator++, accessing an element by using operator[], and accessing an element by using pointer arithmetic. The element accessed by the iterator cannot be modified.

ContainerBidirectionalIterator<TValue>

Defines an iterator that can access elements in a container in the forward direction by using the increment operator and in the backward direction by using the decrement operator. The element that the iterator points to can be both written to and read from any number of times. Bidirectional iterators can be used anywhere that an input or output iterator is required.

ContainerRandomAccessIterator<TValue>

Provides an iterator that supports the following operations: moving forward one position by calling operator++, moving backward one position by calling operator--, accessing an element by using operator[], and accessing an element by using pointer arithmetic.

ReverseBidirectionalIterator<TValue>

Defines an iterator that accesses elements in a container in the reverse direction. Elements can be accessed in the forward direction by using the decrement operator and in the backward direction by using the increment operator. The element that the iterator points to can be both written to and read from any number of times. Reverse bidirectional iterators can be used anywhere that a reverse input or reverse output iterator is required.

ReverseRandomAccessIterator<TValue>

Provides an iterator that supports the following operations: moving forward one position by calling operator--, moving backward one position by calling operator++, accessing an element by using operator[], and accessing an element by using pointer arithmetic.

Interfaces

IBaseIterator<TValue>

Defines the base interface for all STL/CLR iterators.

IBidirectionalContainer<TValue>

Interface for a container that supports both forward and backward iteration. Containers that implement bidirectional iteration support the following operations: moving forward one position by calling operator++, and moving backward one position by calling operator--.

IBidirectionalIterator<TValue>

Interface for an iterator that can access elements in a container in the forward direction by using the increment operator and in the backward direction by using the decrement operator. The element that the iterator points to can be both written to and read from any number of times. Bidirectional iterators can be used anywhere an input or output iterator is required.

IForwardIterator<TValue>

Interface for an iterator that can access elements in a container only in the forward direction by using the increment operator. The element that the iterator points to can be both written to and read from any number of times. Forward iterators can be used anywhere an input or output iterator is required.

IInputIterator<TValue>

Interface for an iterator that is used to read a sequence from a container only in the forward direction. The element that the iterator points to can be read only one time, and it cannot be modified.

INode<TValue>

Interface for the node data structure. Containers that support bidirectional iteration contain nodes. A node consists of a value for the element at that position in the container and pointers to the next and previous elements in the container.

IOutputIterator<TValue>

Interface for an iterator that is used to write a sequence to a container only in the forward direction. The element that the iterator points to can be written to only one time.

IRandomAccessContainer<TValue>

Interface for a container that supports random access iteration. Containers that implement random access iteration support the following operations: moving forward one position by calling operator++, moving backward one position by calling operator--, accessing an element by using operator[], and accessing an element by using pointer arithmetic.

IRandomAccessIterator<TValue>

Defines the interface for a random access iterator. Random access iterators support the following operations: moving forward one position by calling operator++, moving backward one position by calling operator--, accessing an element by using operator[], and accessing an element by using pointer arithmetic.