Нет, не совсем. Ссылка на значение никогда не выводится. Понятие U&&
, где U
является выводимым параметром шаблона, используется для указания того, что U
должно быть выведено таким образом, чтобы сохранить значение аргумента:
- при передаче значения типа
X
тип U
становится X
.
- при передаче cv квалифицированного lvalue типа
X
, тогда U
становится типом X cv&
.
Более интересным вопросом является то, что произошло с ссылками на rvalue, явно указанными во втором вызове, потому что не происходит никакого вывода, потому что в этом случае две ссылки на rvalue свернуты в одну.