dephi枚举类型的大小不是固定???  我使用了两个枚举类型测试,结果一个2byte, 一个1byte;
什么原因??

解决方案 »

  1.   

    它应该是根据枚举的项的类型来分配内存空间的,还有就是数据类型不足一个字节的,会只分配一个字节,可用tv=(tva,tvb,tvc,tvd,tve);
    //high(gGetData)-low(gGetData)得到枚举类型的长度
      

  2.   

    cg1120说得差不多是这个意思。type
      TEnum1 = (a = 1);
      TEnum2 = (b = 1024);
      TEnum3 = (c = 10241024);ShowMessage(Format('%d'#13'%d'#13'%d', [SizeOf(TEnum1), SizeOf(TEnum2), SizeOf(TEnum3)]);
      

  3.   

    想要混一分也不行你就這樣結貼了
    sigh!