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

extent_d テンプレート関数

構文

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

説明

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

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

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

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

typename ObjT

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

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

n_container<…>

n_extent_t<…>

n_extent_generator<…>

戻り値

要求された a_obj の DimensionT に対応する適切な型の範囲。

template <typename VolumeT>
void foo(const VolumeT & a_volume)
{
    int extent_z = extent_d<0>(volume); 
    int extent_y = extent_d<1>(volume); 
    int extent_x = extent_d<2>(volume); 
    /…
}