fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. struct T {
  5. T() { std::cout << "T created \n"; }
  6. int val = 0;
  7. ~T() { std::cout << "T destroyed \n"; }
  8. };
  9.  
  10. void function(T t_obj, T &&t, int &&val) {
  11. std::cout << "func-start \n";
  12. std::cout << t_obj.val << ", " << t.val << ", " << val << std::endl;
  13. std::cout << "func-end \n";
  14. }
  15.  
  16. int main() {
  17.  
  18. function(T(), T(), T().val);
  19.  
  20. return 0;
  21. }
Success #stdin #stdout 0s 3468KB
stdin
Standard input is empty
stdout
T created 
T created 
T created 
func-start 
0, 0, 0
func-end 
T destroyed 
T destroyed 
T destroyed