winapi – Windows头文件中的“#ifdef _MAC”是什么?

前端之家收集整理的这篇文章主要介绍了winapi – Windows头文件中的“#ifdef _MAC”是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在浏览 Windows的Platform SDK头文件(什么是生命,对吗?),我注意到许多地方包含对预处理符号_MAC的引用.例如:
// WinUser.h line 1568
/*
 * Message structure
 */
typedef struct tagMSG {
    HWND        hwnd;
    UINT        message;
    WPARAM      wParam;
    LPARAM      lParam;
    DWORD       time;
    POINT       pt;
#ifdef _MAC
    DWORD       lPrivate;
#endif
} MSG,*PMSG,NEAR *NPMSG,FAR *LPMSG;

这是否意味着“Macintosh”?有没有可以为Macintosh编译Windows或Windows子集的时间?

微软曾经是全球最大的Macintosh软件开发商. Excel和Word在Macintosh上主宰了他们各自的市场,之后也是Office.所以这并不奇怪,MS的应用程序部门会想要在MAC上运行的Windows头文件的一部分 – 使他们的跨平台软件更容易维护.

但从来没有任何版本的Windows操作系统在Macintosh上运行.

在任何情况下,这个片段来自objidl.h,似乎表明_MAC确实意味着头文件中的Macintosh …

//FSSpec is Macintosh only,defined in macos\files.h
#ifdef _MAC
    typedef struct tagSTATSTG
    {                      
        LPOLESTR pwcsName;
            FSSpec *pspec;
        DWORD type;
        ULARGE_INTEGER cbSize;
...
    } STATSTG;
#else //_MAC
原文链接:https://www.f2er.com/windows/371108.html

猜你在找的Windows相关文章