inicializar matriz com número constante não funciona

Eu recebo o seguinte erro quando uso constantenVar em vez de um número.

constantes.h:

extern const unsigned int nVar;

constants.cpp:

#include "constants.h"
const unsigned int nVar = 5;

main.cpp

#pragma once
#include "constants.h"
void foo(const double q[nVar])
{
    // ...
}

Compilador:

a constante de array não é uma constante inteira antes de ']' token

esperado ')' antes ',' token

ID não qualificado esperado antes de 'const'

questionAnswers(2)

yourAnswerToTheQuestion