自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++中内存泄露检测

内存泄露的关键就是记录分配的内存和释放内存的操作,看看能不能匹配。跟踪每一块内存的声明周期,例如:每当申请一块内存后,把指向它的指针加入到List中,当释放时,再把对应的指针从List中删除,到程序最后检查List就可以知道有没有内存泄露了。Window平台下的Visual Studio调试器和C运行时(CRT)就是用这个原理来检测内存泄露。在VS中使用时,需加上#define _CRTD

2015-10-30 14:17:38 920

原创 error LNK2038: 检测到“RuntimeLibrary”的不匹配项的解决办法

首先贴一段错误信息如下:1>IlmImfd.lib(ImfTiledRgbaFile.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项:  值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug”(COLOR2Gray.obj 中)1>IlmImfd.lib(IexBaseExc.obj) : error LNK2038:

2015-10-16 16:23:08 30918 3

原创 C++中顶层const和底层const

顶层const表示指针或对象本身是一个常量指针底层const表示指针或引用指向的对象是一个常量int i=0;int *const p1=&i;//p1本身是一个常量指针,不能再把p1指向其他对象,这是一个顶层constconst int ci=42;// 不能改变ci的 值,ci是一个顶层constconst int*p2=&ci;//不能改变*p2的值,但可以把p2再指向其

2015-10-15 19:01:06 578

原创 C++中四种类型转换

C++中四种类型转换有:static_cast、const_cast、dynamic_cast和reinterpret_cast一、static_caststatic_cast对任何具有明确定义的类型转换,只要不包含底层const,都可以使用static_cast。 旧式的强制类型转换早期的C++版本中,显示的进行强制类型转换包含两种形式:1) type(expr) ;//

2015-10-15 18:32:51 566

原创 C++中深入理解dynamic_cast

dynamic_cast运算符的主要用途:将基类的指针或引用安全地转换成派生类的指针或引用,并用派生类的指针或引用调用非虚函数。如果是基类指针或引用调用的是虚函数无需转换就能在运行时调用派生类的虚函数。前提条件:当我们将dynamic_cast用于某种类型的指针或引用时,只有该类型含有虚函数时,才能进行这种转换。否则,编译器会报错。dynamic_cast运算符的调用形式如下所示:dy

2015-10-15 10:14:02 15852 2

空空如也

空空如也

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

TA关注的人

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