程序设计与算法(三)第03周测验004:这个指针哪来的

程序设计与算法(三)第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;
}

提交,通过,下载通过码。

后面的题越来越难了。坚持下去

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章