首页 > 解决方案 > C++ 混淆宏

问题描述

我正在查看一些 windows directx 应用程序代码,看到他们使用宏 _T(x) 来设置他们的窗口名称,在查看宏定义时我看到了这个

#define _T(x)       __T(x)

然后我跟着看了看__T

#define __T(x)      x

为什么会存在这种情况?

标签: c++

解决方案


_T(x)通常是与平台无关的文本字符类型的宏。在某些平台上,它可能会解析为x. 在其他使用宽字符的情况下,它可能会解析为L ## x,例如,_T("abc")可能会解析为"abc"L"abc"


推荐阅读