При назначении типа const вы можете назначать только литералы, например: 1, 2, 'a', 'b' и т. Д., А не такие переменные, как int x, float y, const int z и т. Д. Переменные, несмотря на то, что вашпеременная на самом деле не является переменной (так как она не может измениться) не допускается.Вместо этого вы должны сделать:
const int x = 123;
const int y = 123;
или
#define x 123
const int y = 123;
Второй работает, потому что компилятор будет разбрасывать везде, где есть x, и заменять его литералом перед компиляцией.