首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

宏能想办法打印出来不?求教高手啊该怎么解决

2012-03-31 
宏能想办法打印出来不?求教高手啊~~如下例子,写了一个安全删除的例子:C/C++ code#define SAFE_DELETE(x) {

宏能想办法打印出来不?求教高手啊~~
如下例子,写了一个安全删除的例子:

C/C++ code
#define SAFE_DELETE(x) {if(x) delete x; x=NULL;} // 安全删除new分配出来的变量空间



现在我想增加功能;在x为空的时候,打印出变量名.

C/C++ code
Poit a,b; //假设a为空,b不为空SAFE_DELETE(a);//也就是在这里打印出a,请问:可以通过修改以上宏,来达到目的吗?SAFE_DELETE(b);


[解决办法]
#define SAFE_DELETE(x) { printf("%s", #x); if(x) delete x; x=NULL;}
[解决办法]
C/C++ code
#define SAFE_DELETE(x) {if(x) delete x;else printf("%s is NULL\n", #x); x=NULL;}
[解决办法]
C/C++ code
#define SAFE_DELETE(x)\    if (x)\    {\        delete x;\        x = NULL;\    }\    else\        printf("Null pointer \"%s\" in %s(%d).\n", #x, __FILE__, __LINE__); 

热点排行