Advertisement
Guest User

Esercizio_4_pag77

a guest
Nov 20th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.60 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4.  
  5. class A{
  6. private:
  7.     int z;
  8. public:
  9.     ~A(){
  10.         cout<<"Ad ";
  11.     }
  12. };
  13.  
  14. class B{
  15. public:
  16.     A* p;
  17.     A a;
  18.     ~B(){cout<<"Bd ";}
  19. };
  20.  
  21. class C
  22. {
  23. public:
  24.     static B s;
  25.     int k;
  26.     A a;
  27.     ~C(){cout<<"Cd ";}
  28. };
  29.  
  30. B C::s=B();
  31. int main(){
  32.     C c1, c2;
  33. }
  34.  
  35. /* Senza l'ottimizzazione (-fno-elide-constructors) stampa Bd Ad Cd Ad Cd Ad Bd Ad (distrugge due volte un campo dati
  36.  statico? Credevo che un campo dati statico fosse uno per tutte le istanze della classe)
  37. * Con l'ottimizzazione stampa: Cd Ad Cd Ad Bd Ad, che pensavo fosse la stampa normale (perchè ?)
  38. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement