Из вашего редактирования: 12.2 утверждает, что временный объект создается в тех случаях, когда вы инициализируете константную ссылку, где она ссылается на значение.Например:
double d = 3.14;
const int &r = d;
компилятор преобразует этот код во что-то вроде этого:
int temp = d; // creates a temporary int
const int &r = temp; // reference is bound to that temporary
Время жизни временного объекта, связанного с константной ссылкой, - это время жизни ссылки.то есть временное уничтожается, когда ссылка выходит из области видимости.