程序员人生 网站导航

VC++实用宏定义

栏目:互联网时间:2014-09-19 06:10:35

前言:

在日常的编程工作中,常常定义一些实用的宏方便调用,该文章将收集一些常用的宏供大家参考,欢迎大家讨论和添加!

指针释放

最常用的就是指针的安全释放。
对应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

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐