다음을 통해 공유


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;

참고 항목

Concurrency 네임스페이스(C++ AMP)