问题描述
- 关于对象指针的问题,通过对象指针访问对象和对象成员
-
下面的代码在第24行的时候我注释的地方,运行为什么不对?
-> 运算:对象指针名->成员
不是等价于
(*对象指针名).成员
吗?#include
using namespace std;
class point
{
public:
point(int x=0,int y=0):x(x),y(y){}
int getx() const
{
return x;
}
int gety() const
{
return y;
}
private:
int x,y;
};
int main()
{
point p1(4,5);
point *p=&p1;
cout<getx()<<endl;
cout<<p1.getx()<<endl;
// cout<<(*p1).getx<<endl; //为什么这样子不可以!!!
return 0;
}
解决方案
指针使用->而不是.,而且函数调用你也少了括号一对。
解决方案二:
C++ 对象成员指针
对象成员的指针
用指针访问对象
解决方案三:
你的注释部分是不是少了括号
时间: 2024-09-28 08:58:43