fork(15) download
  1. #include <iostream>
  2.  
  3. //
  4. // 危険なコード
  5. // デストラクタが呼ばれた後のオブジェクトを参照している
  6. //
  7.  
  8. struct something
  9. {
  10. int a = 0;
  11. int& get() { return ( a ); }
  12. ~something() { std::cout << "destructor" << std::endl; }
  13. };
  14.  
  15. int main()
  16. {
  17. int& n = something().get();
  18. // n is destructed.
  19. std::cout << n << std::endl; // oops!
  20. }
  21.  
Success #stdin #stdout 0s 3096KB
stdin
Standard input is empty
stdout
destructor
-1219985843