_UNIX:UNIX系统平台。
_POSIX_:POSIX(Portable Operating System Intece of Unix)系统平台。
_LINUX_:LINUX系统平台。
_APPLE_/_MAC_:苹果(Macintosh)系统平台。
(2)字符集识别宏
_MBCS/_UNICODE:指明该工程使用的字符集(多字节字符集/UNICODE)。
在VC6.0的“Project Setting→C/C→Project Options”处将会有/D "_MBCS"或/D "_UNICODE"开关。
在VC2005的“项目属性→配置属性→常规→项目默认→字符集”中选择“使用多字节字符集”或“使用Unicode字符集”;在“项目属性→配置属性→C/C→使用UNICODE响应文件”中选择“是”或“否”。在“项目属性→配置属性→C/C→命令行”处将会有/D "_MBCS"或/D "_UNICODE" /D "UNICODE"开关。
当项目中的文件具有UNICODE路径(例如中文路径)时,应在“项目属性→C/C→常规”和“项目属性→链接器→常规”中开启“使用UNICODE响应文件”开关。
(3)UI识别宏
_CONSOLE/_WINDOWS:指明应用程序的类型是控制台程序或窗口程序(CUI/GUI)。
(4)debug/release版本识别宏
_DEBUG/NDEBUG:指明编译版本(Debug/Release)。
2.项目类型特定宏
VC不同的项目类型,有一些特定的宏,以在编译器区分项目类型。
(1)Win32 Static Library项目
VC6.0中:
Project Setting→C/C(Category:General)→Preprocessor definitions:_LIB
如果选择了MFC Support则_WINDOWS,_AFXDLL
VC2005中:
项目属性→常规→配置类型→静态库(.lib)
项目属性→C/C→预处理器→预处理器定义:_LIB
(2)Win32 Dynamic-Link Library项目
VC6.0中:
Project Setting→C/C→Preprocessor definitions:_WINDOWS,_USRDLL,DLL_EXPORTS
VC2005中:
项目属性→常规→配置类型→动态库(.dll)
项目属性→C/C→预处理器→预处理器定义:_WINDOWS;_USRDLL;DLL_EXPORTS
(3)MFC DLL项目
<1>Regular DLL with MFC statically linked(带静态链接MFC的规则DLL)
VC6.0中:
Project Setting→C/C→Preprocessor definitions:_WINDOWS,_WINDLL,_USRDLL
VC2005中:
项目属性→C/C→预处理器→预处理器定义:_WINDOWS;_USRDLL
<2>Regular DLL using shared MFC DLL(使用共享MFC DLL的规则DLL)
VC6.0中:
Project Setting→C/C→Preprocessor definitions:_WINDOWS,_WINDLL,_AFXDLL, _USRDLL
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-41594-2.html
巴菲特呢
清者自清