自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

转载 VC内存泄漏检测工具_Visual Leak Detector

初识Visual Leak Detector       灵活自由是C/C++语言的一大特色,而这也为C/C++程序员出了一个难题。当程序越来越复杂时,内存的管理也会变得越加复杂,稍有不慎就会出现内存问 题。内存泄漏是最常见的内存问题之一。内存泄漏如果不是很严重,在短时间内对程序不会有太大的影响,这也使得内存泄漏问题有很强的隐蔽性,不容易被发现。 然而不管内存泄漏多么轻微,当程序长时间运行时,

2011-06-13 15:20:00 821

转载 VC内存泄漏检测工具_Visual Leak Detector

初识Visual Leak Detector       灵活自由是C/C++语言的一大特色,而这也为C/C++程序员出了一个难题。当程序越来越复杂时,内存的管理也会变得越加复杂,稍有不慎就会出现内存问 题。内存泄漏是最常见的内存问题之一。内存泄漏如果不是很严重,在短时间内对程序不会有太大的影响,这也使得内存泄漏问题有很强的隐蔽性,不容易被发现。 然而不管内存泄漏多么轻微,当程序长时间运行时,

2011-06-13 15:20:00 744

转载 VC内存泄漏检测工具_Visual Leak Detector

初识Visual Leak Detector       灵活自由是C/C++语言的一大特色,而这也为C/C++程序员出了一个难题。当程序越来越复杂时,内存的管理也会变得越加复杂,稍有不慎就会出现内存问 题。内存泄漏是最常见的内存问题之一。内存泄漏如果不是很严重,在短时间内对程序不会有太大的影响,这也使得内存泄漏问题有很强的隐蔽性,不容易被发现。 然而不管内存泄漏多么轻微,当程序长时间运行时,

2011-06-13 15:19:00 753

原创 [转]简单内存泄漏检测方法 解决 Detected memory leaks! 问题

我的环境是: XP SP2 . VS2003最近在一个项目中,程序退出后都出现内存泄漏:Detected memory leaks!Dumping objects ->{98500} normal block at 0x05785AD0, 152 bytes long. Data: 3C AC 4E 10 00 00 00 00 BC A4 4E 10 78 B6 37 00

2011-06-13 14:06:00 856

转载 [DENETLTB][ConnectionOpen(Connect()).]SQL Server不存在或拒绝访问

<br />网络不通。<br />本文收录了不能连接SQL Server ,报 The Network Adapter could not establish the connection 异常的所有遇到过的原因,并提供了图形化的排查向导。 <br />不过根据经验,没有升级到SP4的可能性最高。可以直接看第6部分。 <br /><br />常见的错误为: The Network Adapter could not establish the connection <br />1 检查SQL SERVER

2011-04-21 10:11:00 4546

转载 在VS2005中安装BOOST库

在VS2005中安装BOOST库<br />1.在http://www.boost.org/网站上下载文件包<br />2.由于boost是采用其自己的bjam工具通过命令行进行编译的,前提就是要保证自己的“Visual Studio 2005 命令提示”工具可用。<br />3.解压下载的文件包X:/XXX/boost_1_44_0/目录下 <br />4.编译bjam。打开vs2005的工具菜单进入命令提示窗口,cd到X:/XXX/boost_1_44_0/tools/jam/src下执行build.b

2011-04-20 11:49:00 914

转载 ANSI字符集和Unicode字符集

<br />ANSI字符集和Unicode字符集2009年02月27日 星期五 12:44      在计算机中字符通常并不是保存为图像,每个字符都是使用一个编码来表示的,而每个字符究竟使用哪个编码代表,要取决于使用哪个字符集(charset)。<br />  在最初的时候,Internet上只有一种字符集——ANSI的ASCII字符集,它使用7 bits来表示一个字符,总共表示128个字符,其中包括了英文字母、数字、标点符号等常用字符。之后,又进行扩展,使用8 bits表示一个字符,可以表

2011-03-16 10:27:00 3484

原创 lua与c++的相互调用

一.   lua调用C++// luaCallcppFun.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#includeusing namespace std;//头文件要这样引用extern "C" {#include "lua.h"#include "lualib.h"#include "lauxlib.h"}#pragma comment(lib, "lua5.1.lib")int RegFunction();

2011-03-08 11:13:00 45641 6

原创 继承和组合的比较

<br /><br />继承是一种白箱复用,父类的内部细节对子类可见。 <br />对象组合彼此不知道对方内部细节,成为黑箱复用。 <br />继承的优缺点:<br />(若在逻辑上B是A的一种,则允许B继承A的功能和属性)<br />1)  子类可以直接重定义父类的操作。 <br />2)  编译时刻决定了,无法在运行期间更改。 <br />3)  子类要知道父类的实现细节,这样就部分破坏了封装性。子类和父类依赖过于紧密,父类的某些变化必然导致子类的变化。开发过程中遇到过类似的问题。这种依赖,限制了灵

2011-02-14 11:02:00 2087

原创 Adapter(适配器)模式

1. 意图将一个类的接口转换成客户希望的另外一个接口。A d a p t e r模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。2. 结构类适配器使用多重继承对一个接口与另一个接口进行匹配,如下图所示。对象匹配器依赖于对象组合,如下图所示。3. Target— 定义Client使用的与特定领域相关的接口。• Client— 与符合Ta rg e t接口的对象协同。• Adaptee— 定义一个已经存在的接口,这个接口需要适配。• Adapter — 对Adaptee的接口与Target接口进行

2011-02-12 11:13:00 1127

转载 C/C++编译过程

<br /> <br />1、编译预处理:<br />  编译器读取C源程序,对其中的预处理命令(以#开头)和特殊符号进行处理。预处理命令包括主要包括三种,一是宏定义命令,二是条件编译指令,三是头文件包含指令。采用头文件的目的是使某些定义可以供多个不同的C源程序使用。在需要用到这些定义的C源程序中,只需加上#include语句即可,而不必重新定义一遍。预编译程序将头文件中的代码统统加入到源文件,进而产生输出文件。<br />  除了以上三种预处理命令,还有特殊符号。预编译程序可以识别一些特殊符号。例如在源程

2011-02-11 16:53:00 790

原创 Observer模式

<br /> <br />1. 意图<br />     定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时, 所有依赖于它的对象<br />都得到通知并被自动更新。<br />2. 结构<br />3. 参与者• Subject(目标)— 目标知道它的观察者。可以有任意多个观察者观察同一个目标。— 提供注册和删除观察者对象的接口。• Observer(观察者)— 为那些在目标发生改变时需获得通知的对象定义一个更新接口。• ConcreteSubject(具体目标)— 将有关状态存入各Concre

2011-02-11 16:14:00 768

原创 Factory模式和AbstractFactory模式

一.  AbstractFactory模式1. 意图提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。2. 结构

2011-02-11 15:34:00 2352

转载 bridge模式

1. 问题      总结面向对象实际上就两句话:一是松耦合(Coupling),二是高内聚(Cohesion)。面向对象系统追求的目标就是尽可能地提高系统模块内部的内聚(Cohesion)、尽可能降低模块间的耦合(Coupling)。然而这也是面向对象设计过程中最为难把握的部分,大家肯定在OO系统的开发过程中遇到这样的问题:1)客户给了你一个需求,于是使用一个类来实现(A);2)客户需求变化,有两个算法实现功能,于是改变设计,我们通过一个抽象的基类,再定义两个具体类实现两个不同的算法(A1和A2);3)客

2011-02-10 11:13:00 2253

转载 【读书笔记】当析构函数遇到多线程 ── C++中线程安全的对象回调

陈硕同学的"当析构函数遇到多线程 ── C++ 中线程安全的对象回调"是一篇非常优秀的文章,下面列举文章中的一些知识点和经验总结以便能细细品味、消化。 对象构造要做到线程安全,惟一的要求是在构造期间不要泄露 this 指针,即不要在构造函数中注册任何回调也不要在构造函数中把 this 传给跨线程的对象即便在构造函数的最后一行也不行之所以这样规定,是因为在构造函数执行期间对象还没有完成初始化,如果 this 被泄露 (escape) 给了其他对象(其自身创建的子对象除外),那么别的线程有可能访

2011-02-10 10:22:00 2589

转载 shared_ptr

shared_ptr是一个最像指针的"智能指针",是boost.smart_ptr库中最有价值、最重要的组成部分,也是最有用的,Boost库的许多组件--甚至还包括其他一些领域的智能指针都使用了shared_ptr。抱歉,我实在想不出什么更恰当的词汇来形容它在软件开发中的重要性。再强调一遍,shared_ptr非常有价值、非常重要、非常有用。

2011-02-09 16:22:00 80964 10

原创 boost::pool

 Boost库的pool提供了一个内存池分配器,用于管理在一个独立的、大的分配空间里的动态内存分配。Boost库的pool主要适用于快速分配同样大小的内存块,尤其是反复分配和释放同样大小的内存块的情况。使用pool内存池主要有以下两个优点:1. 能够有效地管理许多小型对象的分配和释放工作,避免了自己去管理内存而产生的内存碎片和效率低下问题。2.  告别程序内存泄漏的烦恼,pool库会在内部对内存自动进行管理,避免了程序员一不小心而造成的内存泄漏问题。     pool库主要提供了四种内存池接口,分别是p

2011-02-09 15:45:00 19882

转载 最快速度找到内存泄漏

最快速度找到内存泄漏许式伟2006年11月某日 内存管理是C++程序员的痛。我的《内存管理变革》系列就是试图讨论更为有效的内存管理方式,以杜绝(或减少)内存泄漏,减轻C++程序员的负担。由于工作忙的缘故,这个系列目前未完,暂停。   这篇短文我想换个方式,讨论一下如何以最快的速度找到内存泄漏。    确认是否存在内存泄漏我们知道,MFC程序如果检测到存在内存泄漏,退出程序的时候会在调试窗口提醒内存泄漏。例如:class CMyApp : public CWinApp{public:   BOOL InitA

2011-02-09 15:03:00 2384

转载 共享Windows下C++库之内存池篇

目录结构内存池简介介绍分析内存池改进及所使用技术如何配合STL容器性能测试如何使用内存池简介:关于内存池的介绍,好文很多(这里,这里,这里,还有这里…)。在如今的PC机器上,内存池的作用也没有那么明显了,操作系统对内存的管理已经相当不错。但,为什么还需要内存池呢?两点:1. 减少内存管理负担,提升性能。(比如,在进行密集型算法前申请足够内存内存,然后使用,最后统一释放) 2.减少页面错误(页面错误是由虚拟内存与物理内存交换导致的),减少内存碎片,提高性能。介绍分析内存池改进及所使用技术:该套内存池组件是由S

2011-02-09 11:54:00 1265

原创 热烈庆祝CSDN博客开通

<br />热烈庆祝CSDN博客开通

2011-02-09 11:51:00 565

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除