作者h12258 (叮当)
看板C_and_CPP
标题[问题] free 和new可以同时使用吗
时间Tue May 5 23:02:22 2009
可以用FREE
释放NEW配置的记忆体吗
int *ptr=new int ;
free(ptr);
COMPILE会过
程式跑也不会当掉
这样写会有什麽影响呢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.136.172.211
1F:→ iamivers0n:不会叫destructor 05/05 23:04
2F:→ h12258:那会有什麽影响呢 就结果来说记忆体是都释放掉了吧 05/05 23:10
3F:→ ilway25:有的destructor会再把物件包起的指标也释放之类,就有问题 05/05 23:16
4F:推 kkdlin:不是喔...你写个物件阵列你就知道了 05/05 23:16
5F:推 saxontai:C++ 请用 new & delete,C 请用 malloc & free 05/06 00:01
6F:推 littleshan:绝对不要这样做,一方面是 destructor 的问题 05/06 00:06
7F:→ littleshan:另一方面是new/delete并不一定是用malloc/free实作的 05/06 00:07
8F:→ littleshan:若物件有用 operator overload 设计自己的 new/delete 05/06 00:08
9F:→ littleshan:那你用 free 去释放它,绝对死得很难看 05/06 00:09