• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Fcoding_狂人
自由 编码 Fcoding
博客园    首页    新随笔    联系   管理     
2012年7月4日
“Runtime Error”不产生dump文件的解决办法
摘要: 好不容易复现的宕机bug,结果不产生dump文件,让俺情何以堪啊!坑爹嘛!大部分情况还好,就是弹出这种“Runtime Error”框的时候,不产生dump文件,解决它!!!VS2005中SetUnhandledExceptionFilter函数应用很多软件通过设置自己的异常捕获函数,捕获未处理的异常,生成报告或者日志(例如生成mini-dump文件),达到Release版本下追踪Bug的目的。但是,到了VS2005(即VC8),Microsoft对CRT(C运行时库)的一些与安全相关的代码做了些改动,典型的,例如增加了对缓冲溢出的检查。新CRT版本在出现错误时强制把异常抛给默认的调试器(如果 阅读全文
posted @ 2012-07-04 21:52 Fcoding_狂人 阅读(6936) 评论(0) 推荐(0)
C++内存泄露的检测(四)
摘要: 一 使用各种工具,一般都是收费的,但是可以申请试用。二 工具收集1)BoundsChecker :(http://www.compuware.com/)(首选BoundsChecker) 应该说是功能最强,使用只需要open需要测试的exe,然后start就可以了,可以通过检测结果定位到源代码中有内存泄露的代码行。2)Purifyplus (http://www.ibm.com)3)Memory Validator(http://www.softwareverify.com/index.html) 应该说是功能也比较强,使用只需要start application wizard的start e 阅读全文
posted @ 2012-07-04 21:46 Fcoding_狂人 阅读(590) 评论(0) 推荐(0)
C++内存泄露的检测(二)
摘要: 使用MFC提供的功能来检测内存泄露。使用方法:1)工程是MFC工程,或是工程的设置中有Use MFC in a Shared DLL,2)很多地方说是要定义以下宏#ifdef _DEBUG#define new DEBUG_NEW#endif但是我发现只要include <afx.h> 即可。(大家可以检测一下)3)可以在F5运行程序后,在output窗口中看到如下的内存泄露的显示。(只在debug下有用哦)4)如果有泄露,则显示如下:Detected memory leaks!Dumping objects ->{214} normal block at 0x00D9161 阅读全文
posted @ 2012-07-04 21:42 Fcoding_狂人 阅读(777) 评论(0) 推荐(0)
C++内存泄露的检测(三)
摘要: 一 简单的对内存的分配和释放跟踪,并将结果输出到console,它也是一般C++内存泄露的检测原理,来自C++编程思想:(比较简单,大家都可以看的明白的哦)实现如下:MemCheck.h//: C02:MemCheck.h#ifndef MEMCHECK_H#define MEMCHECK_H#include <cstddef> // for size_t// Hijack the new operator (both scalar and array versions)void* operator new(std::size_t, const char*, long);void* 阅读全文
posted @ 2012-07-04 21:42 Fcoding_狂人 阅读(2206) 评论(0) 推荐(0)
C++内存泄露的检测(一)
摘要: 一Visual Studio 调试器和 C 运行时 (CRT) 库为我们提供了检测和识别内存泄漏的有效方法。主要使用函数:_CrtDumpMemoryLeaks();二 实例 1 #define _CRTDBG_MAP_ALLOC //输出更详细的report 2 #include <stdlib.h> 3 #include <crtdbg.h> 4 //以上的内容必须放在其他include的前面 5 6 #include <vector> 7 8 class MyClass 9 {10 private:11 int *p;12 public:13 MyCl 阅读全文
posted @ 2012-07-04 21:37 Fcoding_狂人 阅读(611) 评论(0) 推荐(0)
【转】C++拷贝构造函数的几个细节
摘要: 一 拷贝构造函数是C++最基础的概念之一,大家自认为对拷贝构造函数了解么?请大家先回答一下三个问题:1. 以下函数哪个是拷贝构造函数,为什么?X::X(constX&); X::X(X); X::X(X&,inta=1); X::X(X&,inta=1,b=2);2. 一个类中可以存在多于一个的拷贝构造函数吗?3. 写出以下程序段的输出结果, 并说明为什么?如果你都能回答无误的话,那么你已经对拷贝构造函数有了相当的了解。#include #include structX{ template<typenameT> X(T&){std::cout< 阅读全文
posted @ 2012-07-04 21:07 Fcoding_狂人 阅读(399) 评论(0) 推荐(0)
在release模式下debug
摘要: Debug Information to release dlls Text: There are 3 settings to add debug information to release dlls under project -> Properties. Make sure you change your Configuration to Release and set the following properties.Under Linker Properties ---> Debug ---> General Debug Info – Yes (/DEBUG) Ge 阅读全文
posted @ 2012-07-04 20:46 Fcoding_狂人 阅读(301) 评论(0) 推荐(0)
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3