啊, 我搞錯 perfect forwarding 的寫法了...perfect forwarding 需要函數參數的型別在函數自己的模版裡這樣才能觸發 rvalue ref 的特殊模版推導規則所以把 Proxy 的 operator() 加個模版就行了變成像是這樣
http://ideone.com/ZBnLhn呼叫方也改成有丟左值跟丟右值的狀況以資證明這是 OK 的這個特殊推導規則是: 模版型別若在函式參數裡是 rvalue ref的型式出現時, 推導結果視乎呼叫方該參數是左值還右值而定左值則推導為 lvalue ref, 右值則推導為不帶 ref 的型態這只在函式模版才有, class 模版不會也無法做這種推導