C 11 中引用折叠规则的作用
引用折叠规则在 C 11 中实现完美转发中发挥着至关重要的作用。完美转发允许通过值、左值引用或右值无缝接受和传递参数的函数
参考折叠规则
C 11 的参考折叠规则为:
引用折叠的基本原理
这些规则确保,无论参数如何传递(通过左值、右值或右值引用),它总是被接收函数“视为”完美所需的类型
C 11 中的利用STL 实用函数
STL 实用函数,例如 std::move() 和 std::forward() 利用参考在内部折叠以方便完美转发。例如:
template<class T> void Fwd(T & &v) { Call(std::forward<T>(v)); }
std::forward>>将左值引用的“& &”折叠为“&”,将右值引用的“& &”折叠为“& &”,使 Call 能够以适当的格式接收其参数。
与 std 的关系: :remove_reference
像 std::remove_reference 这样的实用程序可用于从类型推导中删除引用(例如, std::remove_reference
以上是C 11参考折叠规则如何实现完美转发?的详细内容。更多信息请关注PHP中文网其他相关文章!