class A {
// ...
// Is this one useful?
Foo &&f;
};
В этом конкретном случае нет причин использовать ссылку на rvalue.Это не дает вам ничего, что вы не могли бы сделать раньше.
Но вы можете определить элементы данных с параметризованными типами.Например, std :: tuple будет поддерживать элементы ссылочных данных lvalue и rvalue.Таким образом, это позволяет вам кодифицировать категорию значений выражения, которая может пригодиться для «отложенной совершенной пересылки».Стандартный черновик даже включает шаблон функции вида
template<class Args...>
tuple<Args&&...> pack_arguments(Args&&...args);
Но я, честно говоря, не уверен в его полезности.