index 클래스
N차원 인덱스 벡터를 정의합니다.
구문
template <int _Rank>
class index;
매개 변수
_Rank
차수 또는 차원 수입니다.
멤버
공용 생성자
속성 | 설명 |
---|---|
index 생성자 | index 클래스의 새 인스턴스를 초기화합니다. |
Public 연산자
속성 | 설명 |
---|---|
연산자-- | index 개체의 각 요소를 감소시킵니다. |
operator%= | index 개체의 각 요소를 숫자로 나눌 때의 모듈러스(나머지)를 계산합니다. |
operator*= | index 개체의 각 요소에 숫자를 곱합니다. |
operator/= | index 개체의 각 요소를 숫자로 나눕니다. |
index::operator[] | 지정된 인덱스에 있는 요소를 반환합니다. |
operator++ | index 개체의 각 요소를 증분시킵니다. |
operator+= | index 개체의 각 요소에 지정된 수를 더합니다. |
operator= | 지정된 index 개체의 콘텐츠를 이 항목으로 복사합니다. |
operator-= | index 개체의 각 요소에서 지정된 수를 뺍니다. |
공용 상수
속성 | 설명 |
---|---|
rank 상수 | index 개체의 차수를 저장합니다. |
상속 계층 구조
index
설명
index
구조체는 N차원 공간에서 고유한 위치를 지정하는 N개 정수의 좌표 벡터를 나타냅니다. 벡터의 값은 가장 중요한 값부터 가장 덜 중요한 값 순서로 지정됩니다. operator=를 사용하여 구성 요소의 값을 검색할 수 있습니다.
요구 사항
헤더: amp.h
네임스페이스: 동시성
index 생성자
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
차수 값이 있는 1차원 배열입니다.
_I
1차원 인덱스의 인덱스 위치입니다.
_I0
가장 중요한 차원의 길이입니다.
_I1
다음으로 가장 중요한 차원의 길이입니다.
_I2
가장 덜 중요한 차원의 길이입니다.
_Other
새 index 개체의 기준이 되는 index 개체입니다.
연산자--
index 개체의 각 요소를 감소시킵니다.
index<_Rank>& operator--() restrict(amp,cpu);
index operator--(
int
) restrict(amp,cpu);
반환 값
전두사 연산자의 경우 인덱스 개체(*this
)입니다. 접미사 연산자의 경우 새 index 개체입니다.
operator%=
해당 요소를 지정된 숫자로 나눌 때 인덱스 개체에 있는 각 요소의 모듈러스(나머지)를 계산합니다.
index<_Rank>& operator%=(
int _Rhs
) restrict(cpu, amp);
매개 변수
_Rhs
모듈러스(나머지)를 찾기 위해 나눌 숫자입니다.
Return Value
인덱스 개체입니다.
operator*=
index 개체의 각 요소에 지정된 수를 곱합니다.
index<_Rank>& operator*=(
int _Rhs
) restrict(amp,cpu);
매개 변수
_Rhs
곱할 숫자입니다.
operator/=
index 개체의 각 요소를 지정된 수로 나눕니다.
index<_Rank>& operator/=(
int _Rhs
) restrict(amp,cpu);
매개 변수
_Rhs
나눌 숫자입니다.
operator[]
지정된 위치에 있는 인덱스의 구성 요소를 반환합니다.
int operator[] (
unsigned _Index
) const restrict(amp,cpu);
int& operator[] (
unsigned _Index
) restrict(amp,cpu);
매개 변수
_Index
0부터 차수에서 1을 뺀 값까지 정수입니다.
Return Value
지정된 인덱스에 있는 요소입니다.
설명
다음 예제에서는 인덱스의 구성 요소 값을 표시합니다.
// 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";
operator++
index 개체의 각 요소를 증분시킵니다.
index<_Rank>& operator++() restrict(amp,cpu);
index<_Rank> operator++(
int
) restrict(amp,cpu);
Return Value
전두사 연산자의 경우 인덱스 개체(*this
)입니다. 접미사 연산자의 경우 새 index 개체입니다.
operator+=
index 개체의 각 요소에 지정된 수를 더합니다.
index<_Rank>& operator+=(
const index<_Rank>& _Rhs
) restrict(amp,cpu);
index<_Rank>& operator+=(
int _Rhs
) restrict(amp,cpu);
매개 변수
_Rhs
더할 숫자입니다.
Return Value
인덱스 개체입니다.
operator=
지정된 index 개체의 콘텐츠를 이 항목으로 복사합니다.
index<_Rank>& operator=(
const index<_Rank>& _Other
) restrict(amp,cpu);
매개 변수
_Other
복사할 소스 index 개체입니다.
Return Value
이 index 개체에 대한 참조입니다.
operator-=
index 개체의 각 요소에서 지정된 수를 뺍니다.
index<_Rank>& operator-=(
const index<_Rank>& _Rhs
) restrict(amp,cpu);
index<_Rank>& operator-=(
int _Rhs
) restrict(amp,cpu);
매개 변수
_Rhs
뺄 숫자입니다.
Return Value
인덱스 개체입니다.
Rank
인덱스 개체의 순위를 가져옵니다.
static const int rank = _Rank;