БлогNot. Как напечатать размерности многомерного массива на C++

Помощь дата->рейтинг Поиск Почта RSS канал Статистика nickolay.info Домой

Как напечатать размерности многомерного массива на C++

То есть, по массиву вида

int a[2][3][4][5];

программа должна напечатать

2x3x4x5

без ограничений на количество размерностей.

Поможет вот этот небольшой шаблончик (проверенный в консоли Visual Studio 2015) и рекурсия:

#include <iostream> 

template <typename T, size_t N>
void printDimensions(const T(&a)[N]) {
 std::cout << N;
}

template <typename T, size_t N, size_t M>
void printDimensions(const T(&a)[N][M]) {
 std::cout << N << "x";
 printDimensions(a[0]);
}

int main() {
 int a[2][3][4][5];
 printDimensions(a);
 std::cin.get();
 return 0;
}

теги: c++ алгоритм числа

11.11.2018, 12:37; рейтинг: 51

  свежие записипоиск по блогукомментариистатистикао "вирусах" в архивах .zip

Наверх Яндекс.Метрика
© PerS
вход