インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

index_d テンプレート関数

構文

template<int DimensionT, typename ObjT>
auto index_d(const ObjT &a_obj)

説明

多次元オブジェクトの次元のインデックスを指定する一貫した方法を提供します。n_index_t<…> の 1 つの次元の範囲のみ必要な場合、全体を抽出する必要がありません。

テンプレート引数 説明
int DimensionT

左端の次元から開始する 0 ベースのインデックス。インデックスを照会する n 次元を示します。

要件: DimensionT >= 0 および DimensionT < ObjT::rank

typename ObjT

範囲を取得する n 次元のオブジェクトの型。

要件: ObtT は次のいずれかです。

n_index_t<…>

n_index_generator<…>

戻り値

要求された a_obj の DimensionT に対応する適切な型のインデックス。

template <typename IndicesT>
void foo(const IndicesT & a_pos)
{
    int z = index_d<0>(a_pos);
    int y = index_d<1>(a_pos);
    int x = index_d<2>(a_pos);
    /…
}