为了账号安全,请及时绑定邮箱和手机立即绑定

常指针只能调用对象的常成员函数?

Coordinate *const pCoor=&coor1;

pCoor->getY();

这不是调用了普通成员函数吗?


正在回答

4 回答

这个pCoor只是指针本身是const,并不是所指的对象是const的。所以只是这个pCoor本身不能更改(不能指向其他Coordinate对象),而pCoor所指的coor1是可以被更改的。所以调用普通成员函数没有问题。

你所说的那种指针应该这样声明:

const Coordinate *pCoor;


2 回复 有任何疑惑可以回复我~
#1

星小辰 提问者

你说的我明白,那Coordinate *const pCoor这种指针算不算常指针?
2015-09-14 回复 有任何疑惑可以回复我~
#2

onemoo 回复 星小辰 提问者

算是指针常量
2015-09-14 回复 有任何疑惑可以回复我~
#3

星小辰 提问者 回复 onemoo

多谢!
2015-09-14 回复 有任何疑惑可以回复我~
#4

qq_慕瓜7215810

楼主的例子还是说明了常指针可以指向普通成员函数啊
2018-11-28 回复 有任何疑惑可以回复我~
#5

qq_慕瓜7215810 回复 qq_慕瓜7215810

明白了
2018-11-28 回复 有任何疑惑可以回复我~
查看2条回复

其实只有两个概念  应该是   指向常对象的指针 和指向对象的常指针。常指针应该说的是指向对象的常指针

1 回复 有任何疑惑可以回复我~
#1

LZ谕

指向常对象的指针 = 常指针= Coordinate const * pCoor 指向对象的常指针 = 指针常量 = Coordinate *const pCoor
2018-05-24 回复 有任何疑惑可以回复我~

常指针和指针常量要分清楚

3 回复 有任何疑惑可以回复我~

同问,我觉得C也是错的,那个onemoo的回答不能解答吧

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之封装篇(下)
  • 参与学习       70919    人
  • 解答问题       514    个

封装--面向对象三大特征之一,通过案例让C++所学知识融会贯通

进入课程

常指针只能调用对象的常成员函数?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信