VC++实用宏定义
来源:程序员人生 发布时间:2014-09-19 06:10:35 阅读次数:2757次
前言:
在日常的编程工作中,常常定义一些实用的宏方便调用,该文章将收集一些常用的宏供大家参考,欢迎大家讨论和添加!
指针释放
最常用的就是指针的安全释放。
对应new的释放
#ifndef ReleasePtr
#define ReleasePtr(Ptr) {
if (Ptr != NULL)
{
delete Ptr;
Ptr = NULL;
}
}
#endif
对于new数组的释放
#ifndef ReleasePtrEx
#define ReleasePtrEx(Ptr) {
if (Ptr != NULL)
{
delete[] Ptr;
Ptr = NULL;
}
}
#endif
一个简单的使用原则就是:new 和 delete、new[] 和 delete[] 对应使用
使用举例:
char *pData = new StructXXXX ;
...//处理工程
ReleasePtr(pData );
char *pData = new char[100];
...//处理工程
ReleasePtrEx(pData );
关于delete和delete[]的区别请看我的另外一篇关于《delete与delete[]的真正区别》一文,地址:http://blog.csdn.net/cbnotes/article/details/38900799
生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠