首页
论坛
课程
招聘
[求助]第十章ShowNumber程序BUG
2013-10-27 21:40 22343

[求助]第十章ShowNumber程序BUG

2013-10-27 21:40
22343
看到钱老师的源代码,
delete [] pMyString;                // BUG所在处
我不太理解什么意思.

pMyString = new CMyString[2];
delete [] pMyString;

这么释放有什么问题吗?

[公告] 欢迎大家踊跃尝试高研班11月试题,挑战自己的极限!

收藏
点赞0
打赏
分享
最新回复 (6)
雪    币: 2920
活跃值: 活跃值 (843)
能力值: ( LV13,RANK:240 )
在线值:
发帖
回帖
粉丝
IamHuskar 活跃值 4 2013-10-27 22:50
2
0
new的是一个数组,所以释放也是要释放一个数组。
new xx[]
delete []
一对
如果你用了
new xx[]
只用了delete
那就会释放数组的第一个元素,而不是整个数组
雪    币: 1040
活跃值: 活跃值 (290)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Rookietp 活跃值 2013-10-27 23:25
3
0
清空数组
雪    币: 185
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
roccheung 活跃值 2013-10-28 00:59
4
0
呵呵,这个我清楚。
数组释放用[],单个对象delete。
我就是不明白,上面代码没什么问题。
为什么钱老师在源代码中写一个bug所在处?
我也对比了反汇编后的代码。
雪    币: 6
活跃值: 活跃值 (493)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
yy大雄 活跃值 2013-10-28 11:13
5
0
但看这个没问题,把相关部分的代码都贴出来。
雪    币: 241
活跃值: 活跃值 (18)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
exediy 活跃值 1 2013-10-28 11:24
6
0
数组指针释放的问题?
雪    币: 1
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hzzlyz 活跃值 2013-10-30 21:33
7
0
[QUOTE=roccheung;1234496]看到钱老师的源代码,
delete [] pMyString;                // BUG所在处
我不太理解什么意思.

pMyString = new CMyString[2];
delete [] pMyString;

这么释放有什么问题吗?[/QUOTE]

明白楼主的意思
我也觉得代码没有什么Bug
推荐可能是之前使用了delete, 而后来版本改为delete[], 但是关于修复Bug的字眼未即时更正
游客
登录 | 注册 方可回帖
返回