如果不是自己写代码,有没有一种通用办法知道某个类(结构)包括的项的地址,
也就是说不管我向类(结构)里增加多少项,我都能知道他们的地址便于以后引用他们
    我不能自己编写代码,如果那样的话就一点都不通用了,只是一个定制的类了

解决方案 »

  1.   

    SatanLi1982(红魔) 
    你可知道,结构或者类实例按照偏移量来计算大多数情况是不能得到子项地址的
    例如
    struct st{
        int i1;/* 4 字节*/
        char c1[4];/* 4 字节*/
        double d1; /* 8 字节*/
    }
    struct st st1;这里 &st1.d1是不等于 &st1+4+4;
    因为系统不是连续分配子项地址的。类也是如此
      

  2.   

    VC中对结构体内存分配有个 “秘密”:对其中int整型变量内存分配,必须是偶数位的地址,所以如果把int型变量定义在其它类型变量之后,很有可能引起内存分配的不连续。解决方法:
    将所有整型变量定义在结构体首部
      

  3.   

    对其中int整型变量内存分配,必须是偶数位的地址改为:必须从偶数位地址开始分配