类是一种自定义数据类型,因此也可以使用指针:<类名>*<对象指针名>=<初始值>;
#include
using namespace std;
class Date
{
public:
Date(int y,int m,int d);
void disp();
private:
int year,month,day;
};
Date::Date(int y,int m,int d)
{
year=y;
month=m;
day=d;
}
void Date::disp()
{
cout <<year<<"--"<<month<<"--"<<day<<endl;
}
void main()
{
Date d(2015,12,12);
d.disp();
Date *pd=&d;
pd->disp();
}
在对象指针中有两类指针需特别注意:
指向对象的常指针:<类名>*const<指针名>=<初始值>;
指向常对象的指针:const<类名>*<</span>指针名>=<初始值>;
#include
using namespace std;
class Date
{
public:
Date(int y,int m,int d);
void disp() const;
private:
int year,month,day;
};
Date::Date(int y,int m,int d)
{
year=y;
month=m;
day=d;
}
void Date::disp() const
{
cout<<year<<"--"<<month<<"--"<<day<<endl;
}
void main()
{
Date d1(2016,12,2);
Date *const pd1=&d1;//定义指向对象的常指针并初始化
pd1->disp();
const Date d2(2016,12,3);
const Date *pd2=&d2;//指向常对象的指针
pd2->disp();
pd2=&d1;//更改指向常对象指针的地址值 等同pd2=pd1;
pd2->disp();
}
注意:类成员函数必须是常成员函数,否则在main()函数中才能定义的指向常对象的指针。
本文详细介绍了C++中类的概念及如何使用指针操作类的对象,包括普通对象指针、指向对象的常指针及指向常对象的指针,并通过示例展示了不同类型的指针如何调用成员函数。



被折叠的 条评论
为什么被折叠?



