What & How & Why

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
cs:programming:cpp:cpp_primer:16_template [2024/11/17 04:25] – [实例:argument 转发过程中丢失信息] codingharecs:programming:cpp:cpp_primer:16_template [2024/11/17 04:38] (当前版本) – [使用 std::forward] codinghare
行 917: 行 917:
   * 接受类型为**普通左值**的 argument 时,推断类型是左值引用 ''T&''   * 接受类型为**普通左值**的 argument 时,推断类型是左值引用 ''T&''
   * 接收类型为**常量左值**的 argument 时,推断类型是**常量左值引用** ''const T&''   * 接收类型为**常量左值**的 argument 时,推断类型是**常量左值引用** ''const T&''
-\\ <html><div align="center"> <img src="/_media/programming/cpp/cpp_primer/rvalue_dec.svg width="500"> </div> </html> \\ +\\ {{ :cs:programming:cpp:cpp_primer:rvalue_dec.svg?500 |}} \\ 
 ==T&& 可以接收左值的原因:引用折叠== ==T&& 可以接收左值的原因:引用折叠==
 模板右值引用类型的函数可以接收左值的原因是因为**引用折叠**(//Reference Collapsing// )。考虑以下过程: 模板右值引用类型的函数可以接收左值的原因是因为**引用折叠**(//Reference Collapsing// )。考虑以下过程:
行 1091: 行 1091:
     * 返回的类型是 ''std::forward<T>'',也就是 ''T&&''     * 返回的类型是 ''std::forward<T>'',也就是 ''T&&''
 \\  \\ 
-<html><div align="center"> <img src="/_media/programming/cpp/cpp_primer/forward_3_4.svg width="500"> </div> </html>+{{ :cs:programming:cpp:cpp_primer:forward_3_4.svg?500 |}}
  \\ \\   \\ \\ 
 <WRAP center round box 100%> <WRAP center round box 100%>