Я нашел следующий шаблон в блоге :
template <typename T, size_t N>
struct array_info<T[N]>
{
typedef T type;
enum { size = N };
};
Это элегантная альтернатива sizeof(a) / sizeof(a[0])
.
Обычно используемая конструкция для получения размера массива должна быть где-то в библиотеке. Я не знаю ни одного. Может кто-нибудь сказать мне, что эта функциональность есть в стандартных библиотеках где-то и / или в Boost? Предпочтительно в удобной и легкой форме.