new以及错误处理
/*
如果将“new 所得内存”delete掉却不幸失败,会导致内存泄露(memory leaks)。如果在“new 所得内存”
身上多次delete则会导致不确定行为。
当operator new 抛出异常以反映一个未获满足的内存需求之前,它会先调用一个客户指定的错误处理函数,
一个所谓的new_handler。为了指定这个“用以处理内存不足”的函数,客户必须调用set_new_handler函数。
事例如下:
*/
#include <iostream>
void outOfMem()
{
std::cerr << "我的博客:http://blog.csdn.net/windows_nt.\n";
std::abort();
}
int main()
{
std::set_new_handler(outOfMem);
for (;;)
{
int* pBigDataArray = new int[100000000L];
}
}