您的位置:首页 > 编程语言 > C语言/C++

对C++中指向类的非静态成员的指针的认识

2015-01-15 22:41 106 查看
指针还可以指向类的非静态成员,也就是数据成员和函数成员。

1 指向数据成员的指针

声明形式:

数据类型*类名::成员指针名;

赋值形式:

成员指针名=&类名::成员数据名;

访问形式:

对象名.*成员指针名;

对象指针->*成员指针名;

2 指向函数成员的指针

声明形式:

数据类型(*类名::成员指针名)(形参列表);

赋值形式:

成员指针名=&类名::成员函数名;

访问形式:

(对象名.*成员指针名)(形参列表);

(对象指针->*成员指针名)(形参列表);

注意:当类的成员函数是常成员函数时,在声明成员指针时也要在声明的时候加上const关键字。

还有,由于在类的定义中成员没有确定的地址,因此成员指针中存储的其实是成员的相对位置,成员指针只是表明了它指向哪一个成员,因此访问它们的时候必须用对象名,这样,它们就可以计算出确定的地址了。

以上就是我对于指向类的非静态成员的指针的一些认
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: