请高手进
请问一下两种方法有什么不同:ACE_Message_Block * head = NULL;
ACE_NEW_RETURN(head, ACE_Message_Block( sizeof( void * ) ), -1 );
ACE_Message_Block *msg = head;
-------------------------------------------------
ACE_Message_Block * head =new ACE_Message_Block(sizeof( void * ))
ACE_Message_Block *msg = head; 看书APG第一章,对此有专门介绍。 原帖由 modern 于 2009-9-10 08:49 发表 http://www.acejoy.com/bbs/images/common/back.gif
看书APG第一章,对此有专门介绍。
老大?第一章有专门介绍吗??? 你是问ACE_NEW_RETURN和NEW的区别吗? 在分内存分配失败的时候. 标准C++中,new 可能抛出异常也可能返回NULL.这个跟实现有关. 如果这时new返回的不是NULL(也就是无效的指针),就会发生内存错误. ACE_NEW_RETURN是对new进行了封装.如果内存分配失败,就会返回上层调用者.并指定一个返回值.
页:
[1]