安全delete,添加refenerce,release
2024-10-19 03:40:07
#ifndef SAFE_ADDREF
#define SAFE_ADDREF(p) if (p != NULL) { p->AddRef(); }
#endif
#ifndef SAFE_RELEASE
#define SAFE_RELEASE(p) if (p != NULL) { p->Release(); p = NULL; }
#endif
#define SAFE_DELETE(x) {if ((x)!=NULL) {delete (x); (x)=NULL;}}
#define SAFE_DELETEBUFF(x) {if((x)!=NULL) {delete [] (x); (x) = NULL;}}
#define SAFE_FREE(x) {if((x)!=NULL) {free(x); (x) = NULL;}}
int *b = new int[4];
b[0] = 1;
b[1] = 2;
b[2] = 3;
b[3] = 4;
b[4] = '\0';
delete[] b;
b = NULL
char *array = (char*) malloc(sizeof(char) * 5);
array[0] = 'a';
array[1] = 'b';
array[2] = 'c';
array[3] = 'd';
array[4] = '\0';
free(array);
array = NULL;
最新文章
- Parallel并行编程初步
- 时间戳转化为日期TimeStamp转NSDate转NSString
- SpringMVC 表单复选框处理
- Oracle BFILE备忘
- 如何安装、配置Apache
- Winform开发框架之客户关系管理系统(CRM)的报价单和销售单的处理
- strlen的C/C+++实现
- gcc代码反汇编查看内存分布[1]: gcc
- 在asp.net中使用ajax记录
- 如何在Windows Server 2016启用或关闭Internet Explorer增强的安全配置
- (转)搬瓦工(bandwagonhost)后台管理VPS
- Hibernate学习笔记(2)---hibernate核心文件
- [COGS 2583]南极科考旅行
- 软件加密工具-Virbox 开发者工具盒
- android AysncTask使用
- code signing is required for product type 'Application' in SDK 'iOS 8.1' 错误分析以及解决方案
- Docker 入门(Mac环境)- part 4 swarms
- mysql不能使用localhost登录
- [xsy1100]东舰停战不可避
- iOS 实时监测网络状态(通过Reachability)
热门文章
- iOSCoreData介绍
- python BeautifulSoup find 方法
- 详解MySQL中EXPLAIN解释命令(转)
- 001.XE3添加TPerlRegEx
- 关于Ibatis.net ,将List<;T>; 作为参数的学习笔记
- UML用户指南--UML图简介
- Pair Project: Elevator Scheduler [电梯调度算法的实现和测试]:思考题——谢勤政11061197
- bat写的自动部署脚本
- Automotive Security的一些资料和心得(2):Cryptography
- 读取Excel列内容