new 和 malloc 申请内存失败的区别处理

// malloc 的写法
char* buffer = (char*)malloc(1024);
if(buffer) {
    printf("malloc success!\r\n");    
}
free(buffer);

// new的写法
try {
    char* buffer = new char[1024];
}
catch(...) {
    printf("operator new error!\r\n");
}
delete []buffer;

对于malloc方式申请的内存,通过是否是零指针区别;

对于new方式申请的内存,通过C++异常机制处理。

小细节,大问题。
原文链接: https://www.cnblogs.com/pure/archive/2013/02/17/2914798.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/78135

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月9日 下午6:24
下一篇 2023年2月9日 下午6:25

相关推荐