new和malloc申请内存失败后的处理
Posted stephen-qin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了new和malloc申请内存失败后的处理相关的知识,希望对你有一定的参考价值。
1.c++ 标准 new 失败是抛出异常的,Visual C++ 6.0中返回一个NULL指针.
使用new(std::nothrow)可以保证失败时返回NULL;
因此完全可以 #define new new(std::nothrow) .
2.使用 malloc/calloc 等分配内存的函数时,一定要检查其返回值是否为“空指针”
3.申请内存失败的原因:程序用完了所有的可用内存.
以上是关于new和malloc申请内存失败后的处理的主要内容,如果未能解决你的问题,请参考以下文章