    #include <iostream>
    #include <numeric>
    #include <iterator>
     
    template <size_t N>
    int Sum(const int (&intArray)[N])
    {
      std::cout << "Array size in function: " << N << std::endl;
      return std::accumulate(std::begin(intArray), std::end(intArray), 0);
    }
     
    int main()
    {
      int arr[] = {1,2,3,4,5,6,7};
      int i = Sum(arr);
      std::cout << "Sum " << i << std::endl;
     
    }