pass array into function as a reference code example
Example: array reference argument
template<typename T, size_t N>
void foo(T (&bar)[N])
{
// use N here
}
template<typename T, size_t N>
void foo(T (&bar)[N])
{
// use N here
}