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/p/2914798.html