内存耗尽怎么办?

    xiaoxiao2021-08-16  170

    如果申请动态内存时找不到足够大的内存块,malloc 和new将返回NULL指针,宣告内存申请失败.

    处理"内存耗尽"的问题

    1)判断指针是否为NULL,如果是则马上用return语句终止本函数。

    void Fun(void)

    {

      A *a =new A;

    if(a==NULL)

    {

      return ;

    }

    }

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

    A*  a=new A;

    if(a==NULL)

    {

       cout<<"Memory Exhausted"<<endl;

    }

    3)为new和malloc设置异常处理函数,例如visual C++可以用_set_new_hander函数为new设置用户自己定义的异常处理函数,也可以让malloc享用与new相同的异常处理函数。

    转载请注明原文地址: https://ju.6miu.com/read-676474.html

    最新回复(0)