如下的一段代码,将typedef定义类型和枚举类型放在一起,该怎么样理解,哪位热心的大虾帮忙指点一下,谢谢呵
typedef enum DicomJ2KCompressionControl
   {      
      DICOM_J2K_COMP_RATIO,
      DICOM_J2K_COMP_TARGETSIZE,
      DICOM_J2K_COMP_QFACTOR,
   } DicomJ2KCompressionControl;

解决方案 »

  1.   

    typedef struct DicomJ2KCompressionControl
       {      
          int DICOM_J2K_COMP_RATIO;//注意是分号
          int DICOM_J2K_COMP_TARGETSIZE;
          int DICOM_J2K_COMP_QFACTOR;
       } DicomJ2KCompressionControl;上面是个结构体的定义,那么以后就可以定义DicomJ2KCompressionControl  st;这样st也是一个这样类型的结构本了吧
    //那么
    typedef enum DicomJ2KCompressionControl
       {      
          DICOM_J2K_COMP_RATIO,//注意是逗号
          DICOM_J2K_COMP_TARGETSIZE,
          DICOM_J2K_COMP_QFACTOR,
       } DicomJ2KCompressionControl;
    也是一样啊,DicomJ2KCompressionControl  st;  //st为一个枚举类型
      

  2.   

    谢谢carbon107,具体到我的例子里,就是说DicomJ2KCompressionControl是一个具有
    {
          DICOM_J2K_COMP_RATIO,
          DICOM_J2K_COMP_TARGETSIZE,
          DICOM_J2K_COMP_QFACTOR,
    }
    结构的枚举类型,可以方便的在以后的代码里定义其他这种结构的变量。
      

  3.   

    typedef enum DicomJ2KCompressionControl
       {      
          DICOM_J2K_COMP_RATIO,
          DICOM_J2K_COMP_TARGETSIZE,
          DICOM_J2K_COMP_QFACTOR,
       } DicomJ2KCompressionControl;
    等价于:
    enum DicomJ2KCompressionControl
       {      
          DICOM_J2K_COMP_RATIO,
          DICOM_J2K_COMP_TARGETSIZE,
          DICOM_J2K_COMP_QFACTOR,
       };
    typedef enum DicomJ2KCompressionControl DicomJ2KCompressionControl;