Шаблон функции принимает только значения rC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Шаблон функции принимает только значения r

Сообщение Anonymous »

Написать функцию, принимающую только l-значения, достаточно просто

template
void f(T&);


но из-за универсальных ссылок написать код, который принимает только ссылки rvalue, непросто. Есть ли способ написать общую функцию, которая принимает только ссылки rvalue? (тип возвращаемого значения на самом деле не имеет значения)

template
void only_rvals(T&&);


где

int i{};
only_rvals(i); // fails to compile
only_rvals(6); // successfully compiles


Подробнее здесь: https://stackoverflow.com/questions/242 ... ng-rvalues
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»