SAFE_DELETE

分类: c/C++ 2008-10-14 14:26 706人阅读 评论(2) 收藏 举报

我发现学程序大家差不多都有相似的地方,当一个人从这个地方摔倒的时候,后续总是不断的有人摔摔的,从论坛的提问就能看出来,因为自己学习的时候是 每一一个人带的情况下,独自研究c++,现在仍然记得做c++的第一个星期,每写一句代码都要查一下资料,搜索一下网络,差不多写三句代码都要查半天的痛 苦了,好的是用了一个多月的时间,c++实现了入门,写出了完成端口,视频,Flash加密,破解了别人一个带有数学公式和化学公式的超文本编辑器,呵 呵,但是每有以前的c#和在游戏公司做网站的经验,是无论如何也做不到的.所以学习初学者是如何一步一步入门到提高到成为高手是很好的学习办法,因为大家 都有相似性,除非你身边有个高人,每遇到一个问题总有人帮你解决,那你就根本体会不到独立研究的那种大喜大悲的妙不可言!

指针从这里到那里,一个不小心就导致程序的内存访问违例,想了好多办法也不知道是从哪儿抛出的异常。

如果是错误的使用了指针,那当删除它的时候,肯定会导致程序异常的,想了一个笨办法,每当要delete时,用下面的宏,如果出错了,就把它记录到日志中,并把指针的变量名也记下来,再顺着这个变量找回去,一般是会有所收获的(通常能找到哪个指针的使用有问题。)

#define SAFE_DELETE(x) /
do  /
{ /
CString target=#x;/
try{ /
 if(x != NULL){delete x; x = NULL;} /
}catch(...){ClientLogger::log(" Release "+target+" error");}/
}while(0)

ZT SAFE_DELETE的更多相关文章

  1. http://kb.cnblogs.com/zt/ef/

    http://kb.cnblogs.com/zt/ef/ http://blog.csdn.net/mackz/article/details/8605063 http://www.telerik.c ...

  2. [ZT] Vim快捷键分类

    一. 移动:    h,j,k,l: 左,下,上,右.    w: 下一个词的词首.    e:下一个词的词尾.    b:上一个词的词首.    <>: v 模式选中后进行缩进.二. 跳 ...

  3. 如何杀掉D状态的进程?[zt]【转】

    转自:http://blog.csdn.net/chinalinuxzend/article/details/4288791 [-] 如何杀掉D状态的进程zt 相关博文   原贴:http://www ...

  4. 33条C#、.Net经典面试题目及答案[zt]

    33条C#..Net经典面试题目及答案[zt] 本文集中了多条常见的C#..Net经典面试题目例如“.NET中类和结构的区别”.“ASP.NET页面之间传递值的几种方式?”,并简明扼要的给出了答案,希 ...

  5. Asp.NET MVC 技术参考:http://kb.cnblogs.com/zt/mvc/

    Asp.NET MVC 技术参考:http://kb.cnblogs.com/zt/mvc/

  6. Entity Framework 技术参考:http://kb.cnblogs.com/zt/ef/

    Entity Framework 技术参考:http://kb.cnblogs.com/zt/ef/

  7. rdlc部署zt

    原文:rdlc部署zt 偶然间遇到“ 未能加载文件或程序集microsoft.reportviewer.winforms ……”的一个错误,以前web是遇到过,没想到winform部署也会遇到.找了半 ...

  8. javamail接收邮件(zt)

    zt from:http://xiangzhengyan.iteye.com/blog/85961 import <a href="http://lib.csdn.net/base/j ...

  9. 通过ambari安装hadoop集群,ZT

    通过ambari安装hadoop集群,ZT http://www.cnblogs.com/cenyuhai/p/3295635.html http://www.cnblogs.com/cenyuhai ...

随机推荐

  1. ServletRequestLister

    1 知识点

  2. Vi/Vim命令壁纸图

    下载地址 http://pan.baidu.com/s/1mtQdY

  3. 2、编写/修改权限及执行Shell程序的步骤

    学习目标编写Shell程序执行Shell程序 正文Shell程序有很多类似C语言和其他程序设计语言的特征,但是又没有程序语言那样复杂.Shell程序是指放在一个文件中的一系列Linux命令和实用程序. ...

  4. SpringMVC的json交互

    一.注解说明 1.@RequestBody  作用:@RequestBody注解用于读取http请求的内容(字符串),通过springmvc提供的HttpMessageConverter接口将读到的内 ...

  5. Ajax嵌套Ajax的模版

    引入 在开发中,难免会碰到需要发送两次ajax请求或者更多的情况 情境:我们需要resultB数据,后台提供的接口要先传入参数paramA,获取到resultA,然后resultA作为参数,调用另外一 ...

  6. jQuery 的动画效果图片----隐藏打开方法

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. plpgsql 函数定义

    --Function: dbo.fn_test(integer) --DROP FUNCTION dbo.fn_test(integer); CREATE OR REPLACE FUNCTION db ...

  8. [转]OData/WebApi

    本文转自:https://github.com/OData/WebApi/tree/vNext OData Web API Introduction OData Web API (i.e., ASP. ...

  9. [转]weui-wxss WeUI for 小程序 为微信小程序量身设计

    本文转自:https://github.com/weui/weui-wxss/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=tou ...

  10. 使用Having子句

    Having 子句与where子句的功能类似,都是对行进行筛选.但是,where搜索条件是在分组操作之前对记录进行筛选,然后再由group BY 对筛选后符合条件的行进行分组:而Having搜索条件则 ...