`auto &&`参数可以完美转发吗?

Can `auto &&` parameters be perfect forwarded?

对于模板函数,我使用这样的完美转发:

template<typename T>
void f (T && v)
{
  g (std::forward<T> (v));
}

如何在 C++14 lambda 表达式中完善转发 auto && 参数?

auto f = [] (auto && v)
  {
    g (std::forward<??> (v));
  };

(尝试 google 但我选择的关键字没有获得任何好的点击率)

是的,它们可以通过 decltype() 说明符完美转发:

auto f = [](auto&& v)
{
    g(std::forward<decltype(v)>(v));
    //             ~~~~~~~~~~^
};

DEMO