首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

char* p = new char; delete []p;该怎么处理

2012-08-01 
char* p new char delete []p不是说即使不是数组指针也能用 delete[] 么为什么下面的代码delete 的时

char* p = new char; delete []p;
不是说即使不是数组指针也能用 delete[] 么
为什么下面的代码delete 的时候挂了,换成 delete p;就没问题

C/C++ code
#include <string>#include <set>using namespace std;int  main ( ){    set<string>* p = new set<string>;    delete []p;    printf("run into here!\n");}




[解决办法]
谁跟你说的?离他能多远就多远。

[解决办法]
请问:delete []p这个是删除的谁的[]呢??
[解决办法]
new多少delete多少。
[解决办法]
楼主,回去喷那个人一脸。以后能离他多远就多远。
new p 就 delete
new p[] 就delete []p
这个在稍微好一点的C++书上都明确写过的。。。
[解决办法]
楼主听到的那个说法,俺今天是第一次听到。
new <--> delete
new [] <--> delete[]
[解决办法]
new p 就 delete
new p[] 就delete []p

[解决办法]
以前倒是有帖子讨论说POD类型用new []来申请,却使用delete 来删除

热点排行