首先  <tchar.h>中

#ifdef  _UNICODE

....

#define __T(x)      L ## x  //替换

#else   /* ndef _UNICODE */

#define __T(x)      x      //无替换

你可能会问:L ## x 是什么?

大写字母L(代表「long」),这将告诉编译器该字符串按宽字符保存-即每个字符占用2个字节;

那么_T(X) _TEXT 就会根据__T(X)的值来决定最后替换成什么

<tchar.h>后面有

#define _T(x)       __T(x)

#define _TEXT(x)    __T(x)

最新文章

  1. JavaWeb开发环境准备之Linux篇
  2. Fence 设备
  3. Qt 属性
  4. Dom0级事件
  5. wchar_t*和char*之间的互相转换的那些事
  6. Linux了解进程的地址空间
  7. sscanf()函数的用法
  8. (中等) HDU 4725 The Shortest Path in Nya Graph,Dijkstra+加点。
  9. OpenStack/devstack with Neutron on Ubuntu 14 (1)
  10. 《C++之那些年踩过的坑(二)》
  11. C++对象模型(一):The Semantics of Constructors The Default Constructor (默认构造函数什么时候会被创建出来)
  12. Spring的AOP基于AspectJ的注解方式开发3
  13. 字节缓冲流 BufferedOutputStream BufferedInputStream
  14. SpringBoot系列: 使用 flyway 管理数据库版本
  15. Open SuSE中自定义的环境变量
  16. php调试用的几个小方法
  17. css规范 - bem
  18. vector_01
  19. oracle_列转行
  20. Spring ApplicationListener配合-D实现参数初始化

热门文章

  1. css sprite讲解与使用实例
  2. 二级ul li元素动态加载click事件
  3. C++ TUTORIAL - MEMORY ALLOCATION - 2016
  4. JsonCpp——json文件的解析
  5. CSS动画的性能分析和浏览器GPU加速
  6. 服务迁移之路 | Spring Cloud向Service Mesh转变
  7. 一个C#开发者重温C++的心路历程
  8. Unity Mecanim在大型mmo中的应用
  9. MongoDb Samus 驱动的改进
  10. 初次接触Service笔记