Microsoft.VisualC.StlClr.Generic Пространство имен

Содержит классы, интерфейсы и итераторы, используемые для реализации универсального интерфейса с библиотекой STL/CLR. С помощью этого универсального интерфейса код, написанный с использованием STL/CLR, можно вызывать из программ на других языках .NET, таких как C# и Visual Basic.

Классы

ConstContainerBidirectionalIterator<TValue>

Определяет итератор, который может получить доступ к элементам контейнера в прямом направлении, используя оператор инкремента, или в обратном направлении, используя оператор декремента. Невозможно изменить элемент, на который указывает итератор. Двунаправленные итераторы можно использовать везде, где требуется итератор ввода или вывода константы.

ConstContainerRandomAccessIterator<TValue>

Содержит итератор, поддерживающий следующие операции: перемещение на одну позицию вперед с помощью вызова функции operator++, перемещение на одну позицию назад с помощью вызова функции operator--, доступ к элементу с использованием функции operator[] и доступ к элементу с использованием арифметических операций над указателями. Элемент, указываемый итератором, не может быть изменен.

ConstReverseBidirectionalIterator<TValue>

Определяет итератор, который обходит элементы контейнера в противоположном направлении. Доступ к элементам может производиться в прямом направлении с помощью оператора декремента и в обратном с помощью оператора увеличения. Невозможно изменить элемент, на который указывает итератор. Постоянные реверсивные двунаправленные итераторы можно использовать всякий раз, когда требуется постоянный реверсивный итератор ввода или вывода.

ConstReverseRandomAccessIterator<TValue>

Содержит итератор, поддерживающий следующие операции: перемещение на одну позицию вперед с помощью вызова функции operator--, перемещение на одну позицию назад с помощью вызова функции operator++, доступ к элементу с использованием функции operator[] и доступ к элементу с использованием арифметических операций с указателями. Элемент, к которому производит доступ итератор, не может быть изменен.

ContainerBidirectionalIterator<TValue>

Определяет итератор, который может получить доступ к элементам контейнера в прямом направлении, используя оператор инкремента, или в обратном направлении, используя оператор декремента. Элемент, указываемый итератором, допускает многократное чтение и запись. Двунаправленные итераторы можно использовать всякий раз, когда требуется итератор ввода или вывода.

ContainerRandomAccessIterator<TValue>

Содержит итератор, поддерживающий следующие операции: перемещение на одну позицию вперед с помощью вызова функции operator++, перемещение на одну позицию назад с помощью вызова функции operator--, доступ к элементу с использованием функции operator[] и доступ к элементу с использованием арифметических операций над указателями.

ReverseBidirectionalIterator<TValue>

Определяет итератор, который обходит элементы контейнера в противоположном направлении. Доступ к элементам может производиться в прямом направлении с помощью оператора декремента и в обратном с помощью оператора увеличения. Элемент, указываемый итератором, допускает многократное чтение и запись. Реверсивные двунаправленные итераторы можно использовать всякий раз, когда требуется реверсивный итератор ввода или вывода.

ReverseRandomAccessIterator<TValue>

Содержит итератор, поддерживающий следующие операции: перемещение на одну позицию вперед с помощью вызова функции operator--, перемещение на одну позицию назад с помощью вызова функции operator++, доступ к элементу с использованием функции operator[] и доступ к элементу с использованием арифметических операций с указателями.

Интерфейсы

IBaseIterator<TValue>

Определяет базовый интерфейс для всех итераторов STL/CLR.

IBidirectionalContainer<TValue>

Интерфейс для контейнера, поддерживающего как прямые, так и обратные итерации. Контейнеры, реализующие двунаправленные итерации, поддерживают следующие операции: перемещение на одну позицию вперед с помощью вызова функции operator++ и перемещение на одну позицию назад с помощью вызова функции operator--.

IBidirectionalIterator<TValue>

Интерфейс для итератора, который может обходить элементы контейнера в прямом направлении, используя оператор увеличения, или в обратном направлении, используя оператор декремента. Элемент, указываемый итератором, допускает многократное чтение и запись. Двунаправленные итераторы можно использовать всякий раз, когда требуется итератор ввода или вывода.

IForwardIterator<TValue>

Интерфейс для итератора, который может обходить элементы контейнера только в прямом направлении, используя оператор увеличения. Элемент, указываемый итератором, допускает многократное чтение и запись. Прямые итераторы можно использовать всякий раз, когда требуется итератор ввода или вывода.

IInputIterator<TValue>

Интерфейс для итератора, который используется для чтения последовательности элементов контейнера только в прямом направлении. Элемент, указываемый итератором, может быть считан только один раз и не может быть изменен.

INode<TValue>

Интерфейс для структуры данных узла. Контейнеры, поддерживающие двунаправленную итерацию, содержат узлы. узел состоит из значения элемента контейнера, находящегося в данной позиции, и указателей на предыдущий и следующий элементы контейнера.

IOutputIterator<TValue>

Интерфейс для итератора, который используется для записи последовательности элементов в контейнер только в прямом направлении. Элемент, указываемый итератором, может быть записан только один раз.

IRandomAccessContainer<TValue>

Интерфейс для контейнера, поддерживающего итерации с произвольным доступом. Контейнеры, реализующие итерации с произвольным доступом, поддерживают следующие операции: перемещение на одну позицию вперед с помощью вызова функции operator++, перемещение на одну позицию назад с помощью вызова функции operator--, доступ к элементу с использованием функции operator[] и доступ к элементу с использованием арифметических операций с указателями.

IRandomAccessIterator<TValue>

Определяет интерфейс для итератора произвольного доступа. Итераторы произвольного доступа поддерживают следующие операции: перемещение на одну позицию вперед с помощью вызова функции operator++, перемещение на одну позицию назад с помощью вызова функции operator--, доступ к элементу с использованием функции operator[] и доступ к элементу с использованием арифметических операций с указателями.