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

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

2013-04-20 
源码看不懂什么意思do{if(NULL(_DST_X new _SRC_Y)) \MessageBox(NULL, (LPCSTR)#_DST_X, (LPCSTR)po

源码看不懂什么意思
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)

热点排行