#include<iostream>
using namespace std;
class student
{
public:
student()
{
m_iNum=0;
}
int getNum()
{
return m_iNum;
}
private:
int m_iNum;
};
int main()
{
student *stu=new student;
cout<<stu->getNum();
cout<<endl;
cout<<stu[0].getNum();
cout<<endl;
cout<<(*stu).getNum();
cout<<endl;
}
其实在我看来,对象指针的知识和前面所说的对象数组其实有异曲同工之妙
这是因为数组的名字,就是一个指针,也就是数组的首地址
所以我写了三个等价的表达式
在这里我觉得比较新奇的就是第三种表示
因为
(*stu)请务必记得加(),因为不加的话是会报错的!
(*stu)在这里其实可以理解为成为了一个对象,类似从栈中实例出来的一个对象,可以直接通过.来进行访问它本身的函数成员。