形式:
class B
{
public:
int value;
char ch[3];
int sum;
};
int main()
{
int B::* bp = nullptr;//bp 只能指向B内中为int的成员变量
bp = &B::value;
bp = &B::sum;
return 0;
}
bp只能指向B类被public修饰的且类型为int的成员变量
因为bp指向的是偏移量,所以初始化时初始化为0xffffffff
value在类中的偏移量为8,所以bp的值为8
用法:
p2只能指向B中返回值为void,参数为void(必须有隐含的this指针) 的成员函数
funb为静态函数,参数列表中没有隐藏的this指针,所以会报错。