您的位置:首页 > 其它

处理malloc()和new时内存耗尽问题

2013-09-18 13:54 309 查看
(1)判断指针是否为NULL,如果是则立刻使用return终止函数;

void Func(void)

{

A *a = new(nothrow) A;

if(a == NULL) return;

...

}

(2)判断指针是否为NULL,如果是则用exit(1)终止整个程序运行;

void Func(void)

{

A *a = new(nothrow)A;

if(a == NULL) exit(1);

...

}

(3)为new 和malloc()预设异常处理函数;

(4)捕获new抛出的异常,并尝试从中恢复

建议:C++ 中提倡用(4)方式处理
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: