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

c++成员指针笔记

2015-07-28 23:13 239 查看
c++的成员变量,或者成员函数指针声明方法:

//code

class A{

public:

void test();

};

成员函数:

void (A::*callback)();

callback = &A::test;//给成员函数赋值

//两种调用方式

A a;

(a.*callback)();

A* p = new A();

(p->*callback)();

//->*和.* 辅助理解

成员函数指针代表的是一个类内部函数的地址,严格来说应该是偏移量,由于函数依附于class,所以调用的适合必须要传递附属的class的实例,

即(a.*callback);可以理解为 callback(&a);

(p->*callback)();可以理解为 callback(p);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: