VS属性页中的预处理器定义是什么意思 您所在的位置:网站首页 oppor9sk处理器是什么 VS属性页中的预处理器定义是什么意思

VS属性页中的预处理器定义是什么意思

2024-02-06 20:42| 来源: 网络整理| 查看: 265

转载自:https://www.cnblogs.com/Crysaty/p/6605419.html

技术分享

如上图中,在这里,WIN32、_DEBUGE、_UNICODE等其实是一些宏定义,在这里写上这些,相当于在本工程所有的文件中都写上了:

#define WIN32 #define _DEBUG #define _UNICODE

这样,就可以达到一个多一个同一个代码在不同的配置环境在编译的结果文件不一样,从而实现跨平台。比如,在VC中,因为要有的环境是UNICODE,有些则不是,同一份代码为了在两种环境下都可以用,那么就会有以下宏定义(其实这就是twhar.h中的代码):

复制代码 #ifdef _UNICODE typedef wchar_t TCHAR; #define __T(x) L##x #define _T(x) __T(x) #else #define __T(x) x typedef char TCHAR; #endif 复制代码

那么,当你的环境中写了UNICODE时,这一段就会编译:

#define __T(x) L##x #define _T(x) __T(x)

如果没有写UNICODE,那么上面这段就不编译,而是下面这段被编译:

#define __T(x) x

这样,只要你的字符串用了_T("somechar"),那么,在有UNICODE的时候,就是L"somechar";在没有UNICODE在时候,就是它本身"somechar"了。

可以参考下这个:http://blog.csdn.net/xiliang_pan/article/details/7081395



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有