1. 程式人生 > >第六週 閱讀程式(2)

第六週 閱讀程式(2)

問題描述:

閱讀程式,寫出程式的執行結果並理解。

[cpp] view plaincopyprint?在CODE上檢視程式碼片派生到我的程式碼片
  1. #include <iostream>
  2. usingnamespace std;  
  3. class MyClass  
  4. {  
  5. public:  
  6.     MyClass(int x=0):i(x)  
  7.     {  
  8.         cout<<"C"<<i;  
  9.     }  
  10.     ~MyClass()  
  11.     {  
  12.         cout<<"D"<<i;  
  13.     }  
  14.     void SetValue(
    int val)  
  15.     {  
  16.         i=val;  
  17.     }  
  18.     int GetVal()  
  19.     {  
  20.         return i;  
  21.     }  
  22. private:  
  23.     int i;  
  24. };  
  25. int main()  
  26. {  
  27.     MyClass *p[3];  
  28.     int i;  
  29.     for (i=0; i<3; i++)  
  30.     {  
  31.         p[i]=new MyClass(i);  
  32.         p[i]->SetValue(p[i]->GetVal()*2);  
  33.     }  
  34.     for (i=0; i<3; i++)  
  35.         delete p[i];  
  36.     cout<<endl;  
  37.     return 0;  
  38. }  
預計執行結果:C0C1C2D0D2D4

實際執行結果: