程序設計與算法(三)第02周測驗004:哪來的輸出
本文是中國大學MOOC,北京大學程序設計與算法(三)C++面向對象程序設計第二週測驗。
-
總時間限制:
1000ms
-
內存限制:
65536kB
-
描述
程序填空,輸出指定結果
#include <iostream> using namespace std; class A { public: int i; A(int x) { i = x; } // 在此處補充你的代碼 }; int main() { A a(1); A * pa = new A(2); delete pa; return 0; }
-
輸入
無
-
輸出
2 1
-
樣例輸入
無
-
樣例輸出
2 1
我們先看主函數的部分:
int main()
{
A a(1);
A * pa = new A(2);
delete pa;
return 0;
}
發現有delete
語句,我們可能要使用析構函數
再看看類的內容:
class A {
public:
int i;
A(int x) { i = x; }
// 在此處補充你的代碼
};
已經有構造函數了,所以需要填寫的是析構函數
輸出的是2
,1
所以我們容易瞭解到,首先是析構函數使pa
作用,再作用到a(1)
上。
結合類裏的構造函數,我們的析構函數可以寫成:
~A(){
cout<<i<<endl;
}
提交,通過,記得下載通過碼