El término "constante" es realmente ambiguo, y la palabra clave constes engañosa.
constsignifica: "no permitir que el valor de este objeto no se cambie después de la inicialización". No , no significa "constante de tiempo de compilación". Su valor inicial puede (y generalmente lo hace) aún provenir de fuentes de tiempo de ejecución.
Necesita una constante de tiempo de compilación para una matriz enlazada.
A veces es posible tener un objeto llamado fooque es constante en tiempo de compilación, si lo es, const y se inicializó a partir de una expresión constante, como un literal o una constexprcosa. Ese es el caso c; No es el caso b.