Справочный аргумент массива
template<typename T, size_t N>
void foo(T (&bar)[N])
{
// use N here
}
Sugared Bun
template<typename T, size_t N>
void foo(T (&bar)[N])
{
// use N here
}