频道栏目
首页 > 资讯 > C++ > 正文

std:nothrow不抛异常置空指针

17-11-20        来源:[db:作者]  
收藏   我要投稿

通常,我们写C++程序,new一个对象的时候,使用如下的方式:

demo* p = new demo();

而另外一种写法就是像下面这样,在new的后面加上std::nothrow

demo* p = new (std::nothrow) demo();

在我们加上std::nothrow之前,如果new一个对象时,由于种种原因导致内存申请不到,那么这时候一般来说会抛出异常。

而第二种写法的主要区别在于,当内存无法申请时,不会抛出异常,而是直接将指针置空,这样在一定程度上也提高了程序的运行效率。

相关TAG标签
上一篇:最大子段和问题的四种算法“编程开发”
下一篇:Android studio修改IDE背景颜色
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站