c++ 编程练习 012:这个指针哪来的

北大程序设计与算法(三)测验题汇总(2020春季)


描述

填空,按要求输出

#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

来源
Guo Wei


分析

const A a(10);是常量对象,那么const A * p = a.getPointer();也只能调用常量函数,构造或析构函数,此处,很明显getPointer()是常量函数,在声明和定义的后名面加const即可;

	const A *getPointer()const{ return this;} 

执行效果
在这里插入图片描述

发布了196 篇原创文章 · 获赞 47 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_44116998/article/details/104359339
今日推荐