#define 定义相同符号的问题
今天看windows核心编程,里面引用了WinNT.h头文件的部分代码,如图:
#ifdef中两个_TEXT(quote)宏定义让我挺疑惑的,
两个宏把同样的符号定义为不同的东西,到底有什么用呢?
请大侠们不吝赐教 windows 宏定义
[解决办法]
请帖主不要断章取义。
File: "C:\Program Files\Microsoft Visual Studio\VC98\Include\WINNT.H"
172: #ifdef UNICODE // r_winnt
173:
174: #ifndef _TCHAR_DEFINED
175: typedef WCHAR TCHAR, *PTCHAR;
176: typedef WCHAR TBYTE , *PTBYTE ;
177: #define _TCHAR_DEFINED
178: #endif /* !_TCHAR_DEFINED */
179:
180: typedef LPWSTR LPTCH, PTCH;
181: typedef LPWSTR PTSTR, LPTSTR;
182: typedef LPCWSTR LPCTSTR;
183: typedef LPWSTR LP;
184: #define __TEXT(quote) L##quote // r_winnt
185:
186: #else /* UNICODE */ // r_winnt
187:
188: #ifndef _TCHAR_DEFINED
189: typedef char TCHAR, *PTCHAR;
190: typedef unsigned char TBYTE , *PTBYTE ;
191: #define _TCHAR_DEFINED
192: #endif /* !_TCHAR_DEFINED */
193:
194: typedef LPSTR LPTCH, PTCH;
195: typedef LPSTR PTSTR, LPTSTR;
196: typedef LPCSTR LPCTSTR;
197: #define __TEXT(quote) quote // r_winnt
198:
199: #endif /* UNICODE */ // r_winnt