Ответ 1
Литерал - это некоторые данные, которые представлены непосредственно в коде, а не косвенно через вызов переменной или функции.
Вот несколько примеров: по одной в строке:
42
128
3.1415
'a'
"hello world"
Данные, составляющие литерал, не могут быть изменены программой, но могут быть скопированы в переменную для дальнейшего использования:
int a = 42; // creates variable `a` with the same value as the literal `42`
Эта концепция никоим образом не уникальна для С++.
Термин "литерал" исходит из того факта, что вы записали данные literally в вашу программу, то есть точно так же, как написано, а не "скрыто" за имя переменной.