winnt.h 中的HANDLE,定义如下;#ifdef STRICT
typedef void *HANDLE;
#if 0 && (_MSC_VER > 1000)
#define DECLARE_HANDLE(name) struct name##__; typedef struct name##__ *name
#else
#define DECLARE_HANDLE(name) struct name##__{int unused;}; typedef struct name##__ *name
#endif
#else
typedef PVOID HANDLE;
#define DECLARE_HANDLE(name) typedef HANDLE name
#endiftypedef HANDLE *PHANDLE;
这段代码什么意思啊???

解决方案 »

  1.   

    不懂
    反正HANDLE就是void *
      

  2.   

    #if 0 && (_MSC_VER > 1000)0&& (表达式 )0 永远是假的啊,失败??? 假&&(表达式) ,没用啊
    第二:检测谁的类型?能举个例子吗
      

  3.   

    所以就是这个
    #define DECLARE_HANDLE(name) struct name##__{int unused;}; typedef struct name##__ *name