Поделиться через


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[]и доступ к элементу с помощью арифметики указателя.