读书人

源码看不懂什么意思解决方案

发布时间: 2013-04-20 19:43:01 作者: rapoo

源码看不懂什么意思
do{if(NULL==(_DST_X = new _SRC_Y)) \
MessageBox(NULL, (LPCSTR)#_DST_X, (LPCSTR)"pointer is NULL(new_debug)", MB_OK | MB_ICONERROR | MB_APPLMODAL);}while(0)


[解决办法]
动态创建一个_SRC_Y类型的对象,如果创建失败(返回值为NULL),弹出一个消息提示框MessageBox(),提示内容是“pointer is NULL(new_debug)”
[解决办法]

引用:
引用:
动态创建一个_SRC_Y类型的对象,如果创建失败(返回值为NULL),弹出一个消息提示框MessageBox(),提示内容是“pointer is NULL(new_debug)”是不是创建成功就存到_SRC_X里面?
哪里来的_SRC_X?new返回开辟的类型空间的地址,是一个指针,那个_DST_X就是一个_SRC_Y类型的指针,它保存了new返回的地址
[解决办法]
do
{
/*判断空间是否分配成功,失败执行if里的语句*/
if(NULL==(_DST_X /*应该是_SRC_Y 类型的指针*/ = new _SRC_Y/*一个自定义类型*/))\/*'\'是续行符,有些语句一行写不下可加一个\后,可换行接着写,相当于写在一行上*/
MessageBox(NULL, (LPCSTR)#_DST_X/*加个'#',相当于将后面字符串用双引号括起来,相当于"_DST_X"*/, (LPCSTR)"pointer is NULL(new_debug)", MB_OK
[解决办法]
MB_ICONERROR
[解决办法]
MB_APPLMODAL);/*MessageBox 的参数说明自己看MSDN*/
}while(0)

读书人网 >C语言

热点推荐