為什麼右邊值引用變數不是右邊值引用
考慮函數f:
void f(T&&&); // #1 void f(T&); // #2
的兩個重載另一個函數g:
void g(T&& t) { f(t); // calls #2 }
為什麼會重載儘管參數 t是右邊值,f(T&) 仍會被呼叫?
右邊值所引用的本質
右值引用是只能綁定到右邊值的變數(沒有右邊值的物件)名稱)。 T&&t 有一個名稱,使其成為左值。
型別與值的差別
T&& 是型別右值參考。右值引用只能綁定到右值,但它是引用類型的左值。
特殊情況
管理右值引用的規則
以上是為什麼在向其傳遞右值引用時不呼叫'f(T&&)”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!