Ссылка пересылки в C++
Ссылка пересылки - это параметр
T&&, когда T выводится
из аргумента вызова.
Для lvalue аргумента тип параметра
схлопывается до lvalue-ссылки.
Проверить категорию можно через
std::is_lvalue_reference_v
для типа параметра.
Запишем шаблон и передадим именованную
переменную:
#include <iostream>
#include <type_traits>
template<typename T>
void probe(T&& x) {
std::cout << std::is_lvalue_reference_v<decltype(x)> << "\n";
}
int main() {
int value = 11;
probe(value);
return 0;
}
Передайте в probe временное
целое 0 и выведите признак
lvalue-ссылки для параметра.