课程
/后端开发
/C++
/C++远征之封装篇(下)
不是说访问的对象所在内存如果是在堆中开辟的,用“->”符号来访问吗?那么图中p访问为啥还可以用“.”来访问?
2018-04-04
源自:C++远征之封装篇(下) 2-1
正在回答
p是指针,指向Coordinate类型数组中的第一个元素的地址,即首地址,但是p[0]表示的是该数组中的第一个元素,是一个Coordinate类型的对象。对象访问自己的数据成员或者成员函数,必须用.;p是指针,p当前指向的就是该数组中第一个元素p[0],但是因为是用指针访问数据成员和成员函数,因此应该用->。总结起来,就是如果是指针访问数据成员或成员函数,用->,而如果是某个数据类型的对象(这里是Coordinate类型的对象)访问自己的数据成员和成员函数,用.
哇,懂了,非常感谢
举报
封装--面向对象三大特征之一,通过案例让C++所学知识融会贯通