64,637
社区成员
发帖
与我相关
我的任务
分享
//A
char * p = new char[5];
//...
//B
p = new char[6];
//B还可以释放, 但是A已经没有办法释放了
[/quote]你的意思是malloc和free(new和delete)即使不成对出现也不一定造成内存泄露?
//A
char * p = new char[5];
//...
//B
p = new char[6];
//B还可以释放, 但是A已经没有办法释放了
[/quote]你的意思是malloc和free(new和delete)即使不成对出现也不一定造成内存泄露?[/quote]
就看你怎么定义泄露了。
//A
char * p = new char[5];
//...
//B
p = new char[6];
//B还可以释放, 但是A已经没有办法释放了
[/quote]你的意思是malloc和free(new和delete)即使不成对出现也不一定造成内存泄露?[/quote]
对整个系统来说不存在内存泄漏。对你的进程来说存在内存泄漏。malloc的内存不free不能再次被malloc分配。
//A
char * p = new char[5];
//...
//B
p = new char[6];
//B还可以释放, 但是A已经没有办法释放了