最終更新日時(UTC):
が更新

履歴 編集

class template
<type_traits>

std::rank(C++11)

namespace std {
  template <class T>
  struct rank {
    static constexpr std::size_t value = ;
  };

  template <class T>
  inline constexpr std::size_t rank_v = rank<T>::value; // C++17
}

概要

配列型の次元数を取得する。

効果

Tが配列型である場合、配列の次元数となる整数値をメンバ定数valueの値として定義する。配列型でなければ0をメンバ定数valueの値として定義する。

備考

rankintegral_constantから派生する。

#include <type_traits>

static_assert(std::rank<int>::value == 0, "int rank is 0");
static_assert(std::rank<int[3]>::value == 1, "int[3] rank is 1");
static_assert(std::rank<int[3][4]>::value == 2, "int[3][4] rank is 2");

int main() {}

出力

バージョン

言語

  • C++11

処理系

参照