C ++ passa uma matriz por referência

isso é permitido para passar uma matriz por referência?

 void foo(double& *bar) 

Parece que meu compilador diz que não. Por quê? Qual é a maneira correta de passar uma matriz por referência? Ou um trabalho por aí? Eu tenho um argumento de matriz que o meu método deve modificar e que eu deveria recuperar depois. Alternativamente, eu poderia tornar este array um membro da classe, o que funciona bem, mas tem muitos inconvenientes para outra parte do meu código (que eu gostaria de evitar).

Obrigado e cumprimentos.