我正在尝试制作模板包装函数,它应该转发参数和返回值。而且我无法决定使用哪种更好auto&&
或decltype(auto)
返回类型更好。我已经阅读了 Scott Meyers的文章,并了解到与不剥离 ref_qualifiersdecltype(auto)
相比,有必要返回。auto
据我了解,相同的论点适用于使用auto&&
over auto
。现在我有以下问题:
- 我是对的,当我们返回对对象的引用之间没有区别
decltype(auto)
吗auto&&
? - 如果我们返回
rvalue
对象会发生什么,例如:return int{};
?返回值会是悬空引用吗? decltype(auto)
和 和有什么不一样auto&&
?什么更适合作为前向回报类型?