
MFC/C++/C
文章平均质量分 65
佑勿勿
这个作者很懒,什么都没留下…
展开
-
VC单文档实现多视图的方法
多视图是VC开发中经常要用到的技术之一,一般地实现单文档多视图有两种方式1)通过视图分割的技术(使用CSplitterWnd实现),将窗口分割为多个部分,每个部分显示各自显示不同的视图,这种技术实现起来比较简单,并多视图是VC开发中经常要用到的技术之一,一般地实现单文档多视图有两种方式1)通过视图分割的技术(使用CSplitterWnd实现),将窗口分割为多个部分,每个部分显示各自显示不同转载 2012-05-29 22:36:37 · 1026 阅读 · 0 评论 -
VS2010中使用模块定义文件(.def)
都知道在写DLL的时候,使用模块定义文件(.def)可以防止DLL里的命名变更。vc6.0中只要在当前目录下添加.def文件,然后编译就Ok了但在vs2010里这样做是不可以的,必须在项目--属性--连接器--输入---模块定义文件中添加指定文件 .def创建方法,新建个文档,修改后缀为.def,添加到工程中来,编写:关于EXPORTS可查msdn原创 2012-05-29 22:43:48 · 17831 阅读 · 0 评论 -
static_cast和dynamic_cast的联系和区别
staic_cast静态强制; 不能在无关的指针之间进行static类型强制 class CAnimal { //... public: CAnimal(){} }; class CGiraffe:public CAnimal { //... pub转载 2012-05-29 22:31:48 · 553 阅读 · 0 评论 -
C++内存使用机制基本概念详解
在C++编程语言中,对于内存的操作是一个非常重要的应用技术,作为程序员来说,必须要清楚这方面的应用。在这里我们先来介绍一下C++内存使用机制的相关概念,希望能给大家带来一些帮助。1.程序使用内存区一个程序占用的内存区一般分为5种:(1)全局、静态数据区:存储全局变量及静态变量(包括全局静态变量和局部静态变量)(2)常量数据区:存储程序中的常量字符串等。转载 2012-07-17 23:46:58 · 405 阅读 · 0 评论 -
ActiveX之添加属性页
ActiveX添加属性页有二种情况:添加固有属性页添加自定义属性页一、添加固有属性页MFC为ActiveX控件提供三种固有属性页,CLSID_CColorPropPage,CLSID_CFontPropPage,CLSID_CPicturePropPage,他们分别代表了颜色、字体、图片三种属性页。如果想把它们添加到控件当中去,只需要将它们的ID添加到控件属性页ID数组的初翻译 2012-10-01 21:13:29 · 2269 阅读 · 0 评论 -
ActiveX之自定义DoDataExchange函数
在属性页上添加一个控件,并为它关联一个成员变量,我们希望这个成员变量能够与ActiveX控件的属性值关联起来。在VC6.0中添加成员变量时存在着Optional property name选项,可以让成员变量与属性值关联起来。但在VS2008中则没有,这时就需要去自定义DoDataExchange函数。////////////////////////////////////CWnd::翻译 2012-10-01 22:56:03 · 681 阅读 · 0 评论 -
ActiveX之绘制过程
一、ActiveX控件的绘制过程 当ActiveX控件被显示或被重绘时,绘制过程类似于其它用MFC开发的应用程序,不过有一点不同:ActiveX控件具有active、inactive二种状态。 ActiveX控件容器中的ActiveX控件可以看作是一个子窗口,像其它窗口一样,当接收到WM_PAINT消息的时候能够自绘。ActiveX的基类COleControl在它的OnPain翻译 2012-10-02 11:14:25 · 1845 阅读 · 0 评论 -
c/c++的预处理定义 Stringizing Operator (#) Charizing Operator (#@) Token-Pasting Operator (##)
c/c++的预处理定义:一、Stringizing Operator (#)在c和c++中数字标志符#被赋予了新的意义,即字符串化操作符。其作用是:将宏定义中的传入参数名转换成用一对双引号括起来参数名字符串。其只能用于有传入参数的宏定义中,且必须置于宏定义体中的参数名前。如: #define example(instr) printf("the input string转载 2012-09-24 14:37:37 · 993 阅读 · 0 评论