c – Acessar uma matriz na função


Estou tendo que criar uma função num arquivo separado da main, onde a função vai pegar os valores de uma matriz e somar os valores de cada linha, armazenar em um vetor e em seguida imprimir esse vetor que possui as somas, porém não estou conseguindo imprimir os resultados desejados. O arquivo da main ta certinho para receber as matrizes. Esse é o arquivo da função.


#include <iostream>
void sum(float A(), float v(), const short N, const short M)
{
    int i,j;

    for (j=0; j<M; j++)
    {

        for ( i=0; i<N; i++)
        {
            v(i) += A(i*M+j);

        }
    }
    for (i=0; i<N; i++)
    {
        std::cout << v(i) << " ";
    }
}

E esse é o arquivo da main onde digito a matriz, imprimo a matriz e recebo a função.

#include <iostream>
#include "funcoes.hpp"
using namespace std;

int main()
{
    const short n=3,m=4;
    float a(n)(m);
    int i,j;
    float v(n),resul;
    for( i=0; i<n; i++)
    {
        for( j=0; j<m; j++)
        {
            cout << "Digite (" << i+1 << ")(" << j+1 << ") : ";
            cin >>a(i)(j);
        }
        cout << endl;
    }
    for( i=0; i<n; i++)
    {
        for( j=0; j<m; j++)
        {
            cout << a(i)(j) << " ";
        }
        cout << endl;
    }
    sum(&a(n)(m),&v(n),n,m);

    return 0;
}

Vale ressaltar que eu sei que poderia escrever tudo na main, ficaria ate mais fácil, porém eu NECESSITO que a função seja feita em um arquivo fora da main.