程序設計與算法(三)第03周測驗004:這個指針哪來的
本文是中國大學MOOC,北京大學程序設計與算法(三)C++面向對象程序設計第三週測驗。本課程學習的github倉庫歡迎Fork
-
總時間限制:
1000ms
-
內存限制:
65536kB
-
描述
填空,按要求輸出
#include <iostream> using namespace std; struct A { int v; A(int vv):v(vv) { } // 在此處補充你的代碼 }; int main() { const A a(10); const A * p = a.getPointer(); cout << p->v << endl; return 0; }
-
輸入
無
-
輸出
10
-
樣例輸入
無
-
樣例輸出
10
先看主函數:
int main()
{
const A a(10);
const A * p = a.getPointer();
cout << p->v << endl;
return 0;
}
特別注意:
const A * p = a.getPointer();
p
的類型是const A *
,getPointer()
是成員函數,getPointer()
的返回值是const A *
類型,這種方式我們容易聯想到this
指針。同時,a
的類型我們也不能修改。
所以答案是:
const A* getPointer()const{
return this;
}
提交,通過,下載通過碼。
後面的題越來越難了。堅持下去