#ifndef DIM_HPP #define DIM_HPP #include <cstdlib> std::size_t dim(const char* const* argv) { std::size_t count = 0; while (*argv++) ++count; return count; } template<typename T, std::size_t N> constexpr std::size_t dim(const T (&)[N]) { return N; } template<typename T> auto dim(const T& container) -> decltype(container.size()) { return container.size(); } #endif |