fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. struct A {
  5. static int b;
  6. A() { std::cout << "A() "; }
  7. A(const A& a){ std::cout << "A(const A&) ";}
  8. A(A && a) { std::cout << "A(A&&) "; }
  9. ~A() { std::cout << "~A() "; }
  10. };
  11.  
  12. int A::b = 3;
  13.  
  14.  
  15. A f(A a) {
  16. std::cout << a.b << " ";
  17. return a;
  18. }
  19.  
  20. int main() {
  21. A a1, a2;
  22. ++a1.b;
  23. f(a2);
  24. return 0;
  25. }
  26.  
Success #stdin #stdout 0.01s 5284KB
stdin
Standard input is empty
stdout
A() A() A(const A&) 4 A(A&&) ~A() ~A() ~A() ~A()