- 博客(14)
- 资源 (1)
- 收藏
- 关注
转载 DEBUG_NEW
DEBUG_NEW #define new DEBUG_NEW 说明: 帮助查找内存错误。用户在程序中使用DEBUG_NEW,用户通常使用new运算符来从堆上分配。在Debug模式下(但定义了一个DEBUG符号),DEBUG_NEW为它分配的每个对象记录文件名和行号。然后,在用户使用CMemoryState::DumpAllObjectSince成员函数时,每个以DEBUG_NEW分配
2013-07-31 17:08:28 923
转载 堆、栈、自由存储区、全局/静态存储区和常量存储区
栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区。里面的变量通常是局部变量、函数参数等。在一个进程中,位于用户虚拟地址空间顶部的是用户栈,编译器用它来实现函数的调用。和堆一样,用户栈在程序执行期间可以动态地扩展和收缩。 堆,就是那些由 new 分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个 new 就要对应一个 delete。如果程序员没
2013-07-26 15:46:55 665
转载 静态链接库LIB和动态链接库DLL的区别
1.什么是静态连接库,什么是动态链接库 静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib 中的指令都全部被直接包含在最终生成的 EXE 文件中了。但是若使用 DLL,该 DLL 不必被包含在最终 EXE 文件中,EXE 文件执行时可以“动态”地引用和卸载这个与 EXE 独立的 DLL 文件。静态链接库和动态链接库的另外一个区别在于静态链接库
2013-07-19 14:37:29 738
转载 VC中调用COM组件的方法
准备及条件: COM服务器为进程内服务器,DLL名为simpCOM.dll,该组件只有一个接口IFoo,该接口只有一个方法HRESULT SayHello(void) 在SDK中调用 ===================================== 一、最简单最常用的一种,用#import导入类型库,利用VC提供的智
2013-07-19 13:56:36 856
转载 组件(component)技术介绍
组件(component)技术是各种软件重用方法中最重要的一种方法,也是分布式计算和Web服务的基础。网络应用中的软件组件,又被称为中间件(middleware)。组件技术的应用现在已经十分广泛,从Windows编程中使用的各种控件和公用对话框,到ActiveX控件和DirectX的应用;从微软公司的COM,到Sun公司的JavaBean。其中最流行的组件技术的应用是——客户端的VBX(微软/
2013-07-19 10:07:41 4431
转载 托管和非托管的区别
NET Framework 是一种新的计算平台,它简化了在高度分布式 Internet 环境中的应用程序开发。.NET Framework 旨在实现下列目标: 提供一个一致的面向对象的编程环境,而无论对象代码是在本地存储和执行,还是在本地执行但在 Internet 上分布,或者是在远程执行的。 提供一个将软件部署和版本控制冲突最小化的代码执行环境。 提供一个保证代码(包括由未知的或不完全受信任的第
2013-07-18 13:19:25 19672 2
转载 软件概要设计
在需求明确、准备开始编码之前,要做概要设计,而详细设计可能大部分公司没有做,有做的也大部分是和编码同步进行,或者在编码之后。因此,对大部分的公司来说,概要设计文档是唯一的设计文档,对后面的开发、测试、实施、维护工作起到关键性的影响。 一、问题的提出 概要设计写什么?概要设计怎么做? 如何判断设计的模块是完整的? 为什么说设计阶段过于重视业务流程是个误区? 以需求分析文
2013-07-09 15:35:58 1183
转载 Windows消息响应机制之四:PostQuitMessage和GetMessage函数 .
Windows是消息驱动的操作系统。在Windows环境下编程必须熟练掌握Windows消息响应机制。 今天在练习Win32编程时碰到一个关于GetMessage函数的问题。这个问题之前一直没有引起过我的注意,但是今天 在网上搜索发现这个问题很多程序员都跟我一样处于一知半解的状态。 在Win32应用程序的主函数中有一段消息循环收发的代码: while (GetMessage(&Ms
2013-07-04 21:40:21 1105
转载 Windows消息响应机制之三:线程与消息队列 .
当一个线程第一次被创建时,系统假定线程不会用于任何与用户相关的任务。这样可以减少线程对系统资源的要求。但是,一旦该线程调用一个与图形用户界面有关的函数 ( 如检查它的消息队列或建立一个窗口 ),系统就会为该线程分配一些另外的资源,以便它能够执行与用户界面有关的任务。特别是,系统分配了一个THREADINFO结构,并将这个数据结构与线程联系起来。 THREADINFO结构体如下: 1.将
2013-07-04 21:39:30 1277
转载 Windows 消息响应机制之二:消息 .
队列消息和非队列消息 从消息的发送途径来看,消息可以分成2种:队列消息和非队列消息。消息队列由可以分成系统消息队列和线程消息队列。系统消息队列由Windows维护,线程消息队列则由每个GUI线程自己进行维护,为避免给non-GUI现成创建消息队列,所有线程产生时并没有消息队列,仅当线程第一次调用GDI函数数系统给线程创建一个消息队列。队列消息送到系统消息队列,然后到线程消息队列;非队列消
2013-07-04 21:38:47 1661
转载 windows消息响应机制之一:消息分析器
《Windows核心编程》中第九章-用户模式线程同步中一个例子用到了Win32界面编程,发现里面有个很奇特的宏定义chHANDLE_DLGMSG,Debug后发现作者其实用到了Windows中的消息分析器,而这种处理方式是我之前在练习Win32编程时一直在找寻的一种消息映射方式。于是到网上搜索到这边Blog。博主分析的非常细致,讲解的十分详细,转载过来作为今后学习借鉴。转载自:http://b
2013-07-04 21:37:48 973
转载 回调函数的使用
如果试图直接使用C++的成员函数作为回调函数将发生错误,甚至编译就不能通过。通过查询资料发现,其错误是普通的C++成员函数都隐含了一个传递函数作为参数,亦即“this”指针,C++通过传递一个指向自身的指针给其成员函数从而实现程序函数可以访问C++的数据成员。这也可以理解为什么C++类的多个实例可以共享成员函数但是确有不同的数据成员。由于this指针的作用,使得将一个CALLBACK型的成员函数作
2013-07-04 20:52:14 632
转载 MFC消息响应机制分析
---- MFC是Windows下程序设计的最流行的一个类库,但是该类库比较庞杂,尤其是它的消息映射机制,更是涉及到很多低层的东西,我们在这里,对它的整个消息映射机制进行了系统的分析,可以帮助程序开发人员对MFC的消息映射机制有一个比较透彻的了解。1.引言---- VC++的MFC类库实际上是Windows下C++编程的一套最为流行的类库。MFC的框架结构大大方便了程序员的编程工作,但是为
2013-07-04 20:42:57 642
转载 Windows 消息优先级
也许题目有些夸张,但是Windows消息方面确实存在一些不去探究就摸不着头脑的事情,这种问题不是明显错误,不会抛出异常,但却是最棘手的问题,给调试带来很大麻烦,所以我将实际遇到的问题整理如下,以供参考。 一、Windows 消息以及消息处理算法Windows以消息驱动的方式,使得线程能够通过处理消息来响应外界。Windows 为每个需要接受消息和处理消息的线程建立消息队列(包括发送消息
2013-07-04 15:43:42 1028
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人