UNICODE还是_UNICODE

类别:VC语言 点击:0 评论:0 推荐:

在windows编程中,经常要编译Unicode版本的程序,方法是工程文件的配置中加上UNICODE或者_UNICODE编译条件,那么到底是用哪一个呢?

Jeffrey Richter在《Windows核心编程》中说,_UNICODE宏用于C运行期头文件,而UNICODE宏则用于Windows头文件.当编译源代码模块时,通常必须同时定义这两个宏.究竟是怎么样的呢?

我在MFC的头文件中搜了一下,在Afxv_W32.h文件中找到这样一段代码:

#ifdef _UNICODE

#ifndef UNICODE

#define UNICODE

#endif

#endif

 

#ifdef UNICODE

#ifndef _UNICODE

#define _UNICODE

#endif

#endif

 

所以,在MFC程序中,只要设置了两个中其中一个就可以了.

 

但是对于SDK程序,我在头文件搜索中,发现出现次数最多的是UNICODE, _UNICODE仅仅在少数几个文件中,并且互相定义的地方也不多,所以写SDK程序,如果要编译成UNICODE程序,只要设置UNICODE宏就可以了

本文地址:http://com.8s8s.com/it/it764.htm