在VC中下列集合的宽度是4个字节
typedef enum _STORAGE_BUS_TYPE {
    BusTypeUnknown = 0x00,
    BusTypeScsi,
    BusTypeAtapi,
    BusTypeAta,
    BusType1394,
    BusTypeSsa,
    BusTypeFibre,
    BusTypeUsb,
    BusTypeRAID,
    BusTypeMaxReserved = 0x7F
} STORAGE_BUS_TYPE, *PSTORAGE_BUS_TYPE;
在DELPHI中怎么定义对应的集合

解决方案 »

  1.   

    就这样
    type
    TStorageBusType = ( BusTypeUnknown, BusTypeScsi, BusTypeAtapi, BusTypeAta,
    BusType1394, BusTypeSsa, BusTypeFibre, BusTypeUsb, BusTypeRAID );也可以
    const
      BusTypeUnknown     = 0;
      BusTypeScsi        = 1;
      BusTypeAtapi       = 2;
      BusTypeAta         = 3;
      BusType1394        = 4;
      BusTypeSsa         = 5;
      BusTypeFibre       = 6;
      BusTypeUsb         = 7;
      BusTypeRAID        = 8;
      BusTypeMaxReserved = $7F;type
      STORAGE_BUS_TYPE = DWORD;不需要直接翻译的,含义上能对的上就是了去看JEDI的翻译文件了
      

  2.   

    type
      TStorageBusType = ( BusTypeUnknown, BusTypeScsi, BusTypeAtapi, BusTypeAta, BusType1394, BusTypeSsa, BusTypeFibre, BusTypeUsb, BusTypeRAID );
    直接定义
      

  3.   

    奇怪, 直接搬过来不就行了?
    TStorageBusType = ( BusTypeUnknown=$00, BusTypeScsi, BusTypeAtapi, BusTypeAta,
    BusType1394, BusTypeSsa, BusTypeFibre, BusTypeUsb, BusTypeRAID=$7F);不过这样会失去该枚举类型的RTTI功能, 不能使用GetEnumName