Compartilhar via


Classe rank

Obtém o número de dimensões da matriz.

Sintaxe

template <class Type>
struct rank;

Parâmetros de modelo

Type
O tipo a ser consultado.

Comentários

A consulta de tipo contém o valor do número de dimensões do tipo Typede matriz ou 0 se Type não for um tipo de matriz.

Exemplo

// std__type_traits__rank.cpp
// compile with: /EHsc

#include <type_traits>
#include <iostream>

int main()
{
    std::cout << "rank<int> == "
        << std::rank<int>::value << std::endl;
    std::cout << "rank<int[5]> == "
        << std::rank<int[5]>::value << std::endl;
    std::cout << "rank<int[5][10]> == "
        << std::rank<int[5][10]>::value << std::endl;

    int single_dim_array[]{ 1, 2, 3 };
    int double_dim_array[2][1]{ { 4 }, { 5 } };

    std::cout << "\nrank<decltype(single_dim_array)> == "
        << std::rank<decltype(single_dim_array)>::value << std::endl;
    std::cout << "rank<decltype(double_dim_array)> == "
        << std::rank<decltype(double_dim_array)>::value << std::endl;
}
rank<int> == 0
rank<int[5]> == 1
rank<int[5][10]> == 2

rank<decltype(single_dim_array)> == 1
rank<decltype(double_dim_array)> == 2

Requisitos

Cabeçalho: <type_traits>

Namespace: std

Confira também

<type_traits>
extent classe