指向成员的指针

#include <iostream>
#include <stdio.h>


using namespace std;


class Member {
public:
Member():x(1),y(2),z(3){}
 virtual ~Member(){}
 float x,y,z;
};


int main( int argc, char *argv[])
{
  Member m;
  cout << "size:"<< sizeof(Member)<<endl;
  printf("m:%p\n" , &m);
  printf("x:%d  %p\n" , &Member::x, &m.x);
  printf("y:%d  %p\n" , &Member::y, &m.y);
  printf("z:%d  %p\n" , &Member::z, &m.z);




  float Member::* mmm = &Member::x;
  printf("%f\n", m.*mmm);


  return 0;
}

result:

size:24
m:0x7fffa2cc1740
x:8  0x7fffa2cc1748
y:12  0x7fffa2cc174c
z:16  0x7fffa2cc1750
1.000000

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值