[转]VS2010中属性页中,C/C++ -->预处理器定义

VS2010中属性页中,C/C++ -->预处理器定义

时间:2017-01-01 20:40:42      阅读:117      评论:0      收藏:0      [点我收藏+]

如上图中,在这里,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

原文:http://www.cnblogs.com/JMLiu/p/6241427.html

时间: 2024-07-31 16:36:46

[转]VS2010中属性页中,C/C++ -->预处理器定义的相关文章

easyui中tab页中js脚本无法加载的问题及解决方法

我发现tab页中<script src="xxx.js">方式加载的脚本没有生效,firebug看请求也没有请求相应的脚本文件. 单独在浏览器中打开tab页中的页面js脚本请求和加载都没有问题. 之前还以为是诡异的缓存原因,查了资料才知道tab页中加载的是html片段,也就是body中的部分,写在head中的内容会在解析中被过滤掉. 然后把<script src="xx.js">挪到body中,问题就解决了.

word中一页中添加两种不同的页码

,在文档编写的过程中,可能一个页面需要编写两个不同的页码,举个例子,在页脚有一个页码是整个文档的页码,页眉有一个页码,是每个章节的页码: 设置如下: 此处选中这个图标是为了能够看到分节符和其他的符号 首先在每个小结的结尾处插入一个分节符(下一页),如下图,就是在上一章节的结尾的那一页的最后插入分节 (插入分节符就是将整题分成一个独立的部分,可以对每个独立的部分进行独特的操作,后面会有说) 这样操作,在每个小结的结尾处就添加上分节符:下面插入页脚的页码了,如果想让页码连续,就直接双击页脚,进入页脚

用CMake设置Visual Studio工程中预处理器定义值

构建VS工程时预处理值是不可缺少的,如动态库的导出配置等.在通过CMake构建VS工程时,可以通过CMake命令进行定义,下面讲三种应用. 字符集:默认装填下VS工程是多字节字符集,如果需要使用Unicode字符集,可以用下面命令进行设置: Add_Definitions(-DUNICODE -D_UNICODE) 动态库导出:Lib_DLL为自定义变量名 Add_Definitions(-DLib_DLL) MFC的使用:如果在工程中调用了MFC的函数,需要配置在动态库中使用MFC或者在静态库

(转载)VS2010/MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)

属性页对话框包括向导对话框和一般属性页对话框两类,上一节鸡啄米讲了如何创建并显示向导对话框,本节将继续介绍一般属性页对话框的创建和显示. 实际上,一般属性页对话框的创建和显示过程和向导对话框是很类似的.鸡啄米将上一节中的向导对话框进行少量修改,使其成为一般属性页对话框. 一般属性页对话框的创建步骤: 1.创建属性页对话框资源 属性页对话框资源的创建方法同向导对话框是一样的,上一讲中的对话框资源不需进行任何修改. 2.创建属性页类 属性页类的创建和向导对话框的属性页类也基本一样,只是一般属性页对话

VS2010/MFC对话框:一般属性页对话框的创建及显示

一般属性页对话框的创建及显示 本节将介绍一般属性页对话框的创建和显示. 实际上,一般属性页对话框的创建和显示过程和向导对话框是很类似的.鸡啄米将上一节中的向导对话框进行少量修改,使其成为一般属性页对话框. 一般属性页对话框的创建步骤: 1.创建属性页对话框资源 属性页对话框资源的创建方法同向导对话框是一样的,上一讲中的对话框资源不需进行任何修改. 2.创建属性页类 属性页类的创建和向导对话框的属性页类也基本一样,只是一般属性页对话框中不需要“下一步”和“完成”等按钮,所以上一讲中属性页类的OnS

属性页对话框

1.分类 标签式和向导式 2.相关类 CPropertyPage -属性页,其实就是一个对话框页面,父类是CDialog类 CPropertySheet -属性表单,父类是CWnd类 一个完整的属性页对话框由一个属性表单+多个属性页组成 属性页资源与普通对话框资源的区别: 属性页: 对话框: 3.标签式属性页 3.1插入属性页对话框资源,修改语言和字体,双击资源,生成相应的类,注意父类选择CPropertyPage类. 创建一个单文档视图的MFC工程:Prop 插入3个属性页: 注意:①这里插入

CPropertySheet(属性单) CPropertyPage(属性页)

1.添加对话框资源,为对话框创建类,继承于CPropertyPage class CFirstPage : public CPropertyPage // FirstPage.cpp CFirstPage::CFirstPage() : CPropertyPage(CFirstPage::IDD) { m_psp.dwFlags |= PSP_DEFAULT|PSP_HIDEHEADER; } class CSecondPage : public CPropertyPage // SecondP

MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)

属性页对话框包括向导对话框和一般属性页对话框两类,上一节讲了如何创建并显示向导对话框,本节将继续介绍一般属性页对话框的创建和显示. 实际上,一般属性页对话框的创建和显示过程和向导对话框是很类似的.将上一节中的向导对话框进行少量修改,使其成为一般属性页对话框. 一般属性页对话框的创建步骤: 1.创建属性页对话框资源 属性页对话框资源的创建方法同向导对话框是一样的,上一讲中的对话框资源不需要进行任何修改. 2.创建属性页类 属性页类的创建和向导对话框的属性页类也基本一样,只是一般属性页对话框中不需要

如何创建Filter的属性页

本篇文档我们将要讲述如何给一个filter创建一个属性页,通过CBasePropertyPage基类.这篇文档的实例代码演 示了创建属性页的步骤,这里我们假设我们要创建属性页的视频filter支持饱和度属性页,这个属性页有一个滑动条,用户可以通过这个滑动条来控制饱和 度.第一步,设置属性的机理Filter必须支持一种和属性页沟通的方式,通过属性页可以设置或者获取filter的属性,下面是可能的三种方式1暴露一个接口2通过IDispatch支持自动化属性3暴露IPropertyBag 接口,并定义