#include <iostream>
using namespace std;
template<class T, std::size_t N>
void Foo(T const (& arr)[N])
{
cout << "array" <<endl;
}
// общая
template<class T>
void Foo(T& val)
{
cout << "general" <<endl;
}
int main()
{
// вызываем
const int arr[10] = {0};
Foo(arr);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdGVtcGxhdGU8Y2xhc3MgVCwgc3RkOjpzaXplX3QgTj4Kdm9pZCBGb28oVCBjb25zdCAoJiBhcnIpW05dKQp7CiAgIGNvdXQgPDwgImFycmF5IiA8PGVuZGw7Cn0KCi8vINC+0LHRidCw0Y8KdGVtcGxhdGU8Y2xhc3MgVD4Kdm9pZCBGb28oVCYgdmFsKQp7CiAgIGNvdXQgPDwgImdlbmVyYWwiIDw8ZW5kbDsKfQoKaW50IG1haW4oKQp7Ci8vINCy0YvQt9GL0LLQsNC10LwKY29uc3QgaW50IGFyclsxMF0gPSB7MH07CkZvbyhhcnIpOwp9