fork download
  1. #include <iostream>
  2.  
  3. struct T
  4. {
  5. T() { std::cout << "default\n"; }
  6. T(T&&) { std::cout << "move\n"; }
  7. T(T const&) { std::cout << "copy\n"; }
  8. ~T(){ std::cout << "hola\n"; }
  9. };
  10.  
  11. int main(int argc, const char *argv[])
  12. {
  13. T a;
  14. const T &x = ((*argv[0]=='x') ? (T&&)T() : (T&&)a);
  15. std::cout << "done\n";
  16. }
  17.  
Success #stdin #stdout 0s 2928KB
stdin
Standard input is empty
stdout
default
move
done
hola
hola