Класс index
Определяет N-мерный вектор индекса.
Синтаксис
template <int _Rank>
class index;
Параметры
_Rank
Ранг или количество измерений.
Участники
Открытые конструкторы
Имя | Описание |
---|---|
index Constructor | Инициализирует новый экземпляр класса index . |
Открытые операторы
Имя | Описание |
---|---|
оператор-- | Уменьшает каждый элемент объекта index . |
operator%= | Вычисляет остаток от деления каждого элемента в объекте index , если этот элемент делится на число. |
оператор*= | Умножает каждый элемент объекта index на число. |
оператор/= | Делит каждый элемент объекта index на число. |
index::operator[] | Возвращает элемент по указанному индексу. |
оператор++ | Увеличивает каждый элемент объекта index . |
оператор+= | Добавляет указанное число к каждому элементу объекта index . |
operator= | Копирует содержимое указанного объекта index в данный объект. |
operator-= | Вычитает указанное число из каждого элемента объекта index . |
Открытые константы
Имя | Описание |
---|---|
rank Constant | Хранит ранг объекта index . |
Иерархия наследования
index
Замечания
Структура index
представляет вектор координат N целых чисел, который указывает уникальное положение в N-мерном пространстве. Значения в векторе упорядочиваются от наиболее значимых к наименее значимым. Значения компонентов можно получить с помощью operator=.
Требования
Заголовок : amp.h
Пространство имен : Concurrency
index Constructor
Инициализирует новый экземпляр класса index.
index() restrict(amp,cpu);
index(
const index<_Rank>& _Other
) restrict(amp,cpu);
explicit index(
int _I
) restrict(amp,cpu);
index(
int _I0,
int _I1
) restrict(amp,cpu);
index(
int _I0,
int _I1,
int _I2
) restrict(amp,cpu);
explicit index(
const int _Array[_Rank]
) restrict(amp,cpu);
Параметры
_Array
Одномерный массив со значениями ранга.
_I
Расположение индекса в одномерном индексе.
_I0
Длина самого большого измерения.
_I1
Длина второго по величине измерения.
_I2
Длина меньшего измерения.
_Other
Объект index, на котором основан новый объект index.
оператор--
Уменьшает каждый элемент объекта index.
index<_Rank>& operator--() restrict(amp,cpu);
index operator--(
int
) restrict(amp,cpu);
Возвращаемые значения
Для оператора префикса объект index (*this
). Для оператора suffix новый объект index.
operator%=
Вычисляет остаток от деления каждого элемента в объекте index, если этот элемент делится на указанное число.
index<_Rank>& operator%=(
int _Rhs
) restrict(cpu, amp);
Параметры
_Rhs
Число, на которое производится деление, для расчета остатка.
Возвращаемое значение
Объект index.
оператор*=
Умножает каждый элемент в объекте index на указанное число.
index<_Rank>& operator*=(
int _Rhs
) restrict(amp,cpu);
Параметры
_Rhs
Число для умножения.
оператор/=
Делит каждый элемент в объекте index на указанное число.
index<_Rank>& operator/=(
int _Rhs
) restrict(amp,cpu);
Параметры
_Rhs
Делитель.
оператор[]
Возвращает компонент индекса в указанном расположении.
int operator[] (
unsigned _Index
) const restrict(amp,cpu);
int& operator[] (
unsigned _Index
) restrict(amp,cpu);
Параметры
_Index
Целое число от 0 до ранга минус 1.
Возвращаемое значение
Элемент по указанному индексу.
Замечания
В следующем примере выводятся значения компонентов индекса.
// Prints 1 2 3.
concurrency::index<3> idx(1, 2, 3);
std::cout << idx[0] << "\n";
std::cout << idx[1] << "\n";
std::cout << idx[2] << "\n";
оператор++
Увеличивает каждый элемент объекта index.
index<_Rank>& operator++() restrict(amp,cpu);
index<_Rank> operator++(
int
) restrict(amp,cpu);
Возвращаемое значение
Для оператора префикса объект index (*this
). Для оператора suffix новый объект index.
оператор+=
Добавляет указанное число к каждому элементу объекта index.
index<_Rank>& operator+=(
const index<_Rank>& _Rhs
) restrict(amp,cpu);
index<_Rank>& operator+=(
int _Rhs
) restrict(amp,cpu);
Параметры
_Rhs
Добавляемое число.
Возвращаемое значение
Объект index.
operator=
Копирует содержимое указанного объекта index в данный объект.
index<_Rank>& operator=(
const index<_Rank>& _Other
) restrict(amp,cpu);
Параметры
_Other
Объект index, из которого необходимо выполнить копирование.
Возвращаемое значение
Ссылка на этот объект index.
operator-=
Вычитает указанное число из каждого элемента объекта index.
index<_Rank>& operator-=(
const index<_Rank>& _Rhs
) restrict(amp,cpu);
index<_Rank>& operator-=(
int _Rhs
) restrict(amp,cpu);
Параметры
_Rhs
Вычитаемое число.
Возвращаемое значение
Объект index.
Rank
Возвращает ранг объекта index.
static const int rank = _Rank;