﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-Hadn't</title><link>http://www.cppblog.com/hongtaozhy/</link><description>&lt;a href ="http://weibo.com/hongtaozhy"&gt;&lt;span style="COLOR: red"&gt;我的微博Hadn_t&lt;/span&gt;&lt;/a&gt;</description><language>zh-cn</language><lastBuildDate>Sun, 12 Apr 2026 08:02:48 GMT</lastBuildDate><pubDate>Sun, 12 Apr 2026 08:02:48 GMT</pubDate><ttl>60</ttl><item><title>让Android模拟器顺畅起来</title><link>http://www.cppblog.com/hongtaozhy/archive/2013/01/15/197292.html</link><dc:creator>hadn't</dc:creator><author>hadn't</author><pubDate>Tue, 15 Jan 2013 09:09:00 GMT</pubDate><guid>http://www.cppblog.com/hongtaozhy/archive/2013/01/15/197292.html</guid><wfw:comment>http://www.cppblog.com/hongtaozhy/comments/197292.html</wfw:comment><comments>http://www.cppblog.com/hongtaozhy/archive/2013/01/15/197292.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/hongtaozhy/comments/commentRss/197292.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/hongtaozhy/services/trackbacks/197292.html</trackback:ping><description><![CDATA[android模拟器的卡，即使是公司配的i5+4g也快受不了了！于是研究了一下如何让模拟器变得和手机真机一样流畅，甚至更好。<br /><br />模拟器卡的原因很显然，<br /><span style="font-family: Verdana, Arial, Helvetica, sans-serif; line-height: 25px; background-color: #ffffff;">CPU是x86的 模拟器跑在模拟的Arm上。。。</span><br /><br />幸而<span style="font-family: helvetica, STHeiti, 微软雅黑, 'Microsoft Yahei', Helmet, Freesans, sans-serif; line-height: 22px; background-color: #f3f3f3;">Intel 终于发布了基于x86的模拟器镜像<br />操作如下：<br /></span><span style="color: #423009; font-family: Arial, Helvetica, sans-serif; font-size: 12px; background-color: #fafafa;">1、通过Android SDK Manager下载Extras里面的Intel x86 Emulator Accelerator （HAXM）<br /><img src="http://www.cppblog.com/images/cppblog_com/hongtaozhy/未命名3.jpg" border="0" alt="" width="888" height="537" /><br />2、找到sdk的目录\sdk\extras\intel\Hardware_Accelerated_Execution_Manager 安装里面的安装文件&nbsp;</span>IntelHaxm.exe<br /><img src="http://www.cppblog.com/images/cppblog_com/hongtaozhy/未命名5.jpg" border="0" alt="" width="499" height="388" /><span style="color: #423009; font-family: Arial, Helvetica, sans-serif; font-size: 12px; background-color: #fafafa;"><br /></span><span style="color: #423009; font-family: Arial, Helvetica, sans-serif; font-size: 12px; background-color: #fafafa;">3、通过Android SDK Manager&nbsp;</span><span style="color: #423009; font-family: Arial, Helvetica, sans-serif; font-size: 12px; background-color: #fafafa;">更新</span><span style="color: #423009; font-family: Arial, Helvetica, sans-serif; font-size: 12px; background-color: #fafafa;">Android4.1.2（api16） 重点是其中的Intelx86AtomSystemImage 这个就是最新的Intel发布<br /><img src="http://www.cppblog.com/images/cppblog_com/hongtaozhy/未命名2.jpg" border="0" alt="" width="888" height="537" /><br /> 4、建一个Device Target选Android4.1.2 &nbsp;CPU选择&nbsp;</span><span style="color: #423009; font-family: Arial, Helvetica, sans-serif; font-size: 12px; background-color: #fafafa;">Intel Atom（</span><span style="color: #423009; font-family: Arial, Helvetica, sans-serif; font-size: 12px; background-color: #fafafa;">x86）<br /><img src="http://www.cppblog.com/images/cppblog_com/hongtaozhy/未命名7.jpg" border="0" alt="" width="538" height="722" /><br /><br /></span>本人分辨率和屏幕尺寸选择 3.2寸 320*480 &nbsp;实测效果极好 比真机还快<img src ="http://www.cppblog.com/hongtaozhy/aggbug/197292.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/hongtaozhy/" target="_blank">hadn't</a> 2013-01-15 17:09 <a href="http://www.cppblog.com/hongtaozhy/archive/2013/01/15/197292.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>静下心来做好自己的事</title><link>http://www.cppblog.com/hongtaozhy/archive/2012/08/08/186651.html</link><dc:creator>hadn't</dc:creator><author>hadn't</author><pubDate>Wed, 08 Aug 2012 06:19:00 GMT</pubDate><guid>http://www.cppblog.com/hongtaozhy/archive/2012/08/08/186651.html</guid><wfw:comment>http://www.cppblog.com/hongtaozhy/comments/186651.html</wfw:comment><comments>http://www.cppblog.com/hongtaozhy/archive/2012/08/08/186651.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/hongtaozhy/comments/commentRss/186651.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/hongtaozhy/services/trackbacks/186651.html</trackback:ping><description><![CDATA[RT<img src ="http://www.cppblog.com/hongtaozhy/aggbug/186651.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/hongtaozhy/" target="_blank">hadn't</a> 2012-08-08 14:19 <a href="http://www.cppblog.com/hongtaozhy/archive/2012/08/08/186651.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>工作之外</title><link>http://www.cppblog.com/hongtaozhy/archive/2012/02/10/165284.html</link><dc:creator>hadn't</dc:creator><author>hadn't</author><pubDate>Fri, 10 Feb 2012 05:32:00 GMT</pubDate><guid>http://www.cppblog.com/hongtaozhy/archive/2012/02/10/165284.html</guid><wfw:comment>http://www.cppblog.com/hongtaozhy/comments/165284.html</wfw:comment><comments>http://www.cppblog.com/hongtaozhy/archive/2012/02/10/165284.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/hongtaozhy/comments/commentRss/165284.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/hongtaozhy/services/trackbacks/165284.html</trackback:ping><description><![CDATA[今年的目标： 1、学点Python &amp;&amp; Vim 2、学点英文 3、自己的程序For Meego<img src ="http://www.cppblog.com/hongtaozhy/aggbug/165284.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/hongtaozhy/" target="_blank">hadn't</a> 2012-02-10 13:32 <a href="http://www.cppblog.com/hongtaozhy/archive/2012/02/10/165284.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[转]S60模拟器打开即消失问题的解决</title><link>http://www.cppblog.com/hongtaozhy/archive/2012/02/02/164843.html</link><dc:creator>hadn't</dc:creator><author>hadn't</author><pubDate>Thu, 02 Feb 2012 10:08:00 GMT</pubDate><guid>http://www.cppblog.com/hongtaozhy/archive/2012/02/02/164843.html</guid><wfw:comment>http://www.cppblog.com/hongtaozhy/comments/164843.html</wfw:comment><comments>http://www.cppblog.com/hongtaozhy/archive/2012/02/02/164843.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/hongtaozhy/comments/commentRss/164843.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/hongtaozhy/services/trackbacks/164843.html</trackback:ping><description><![CDATA[<p>近日安装了Symbian Foundation ADT v1.4和S60 Developer Tools准备看看S60第五版的SDK有什么新东西，但是启动S60模拟器之后过了大约十几秒，模拟器就自动消失了，什么也没留下。<br />由于我刚重装了系统，想必应该不是软件之间兼容性的问题，应该是什么依赖的软件比如像perl，JRE之类的没有安装正确导致的，但是按这个思路折腾了一翻后无果。</p>
<p>于是上网查资料，在csdn的论坛上看到一个帖子，可以按如下步骤来查看模拟器epoc的启动日志</p>
<p><font color="#0b5394"><span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span">打开 epoc.ini，将LogToFile 0改成LogToFile 1<span class="Apple-converted-space"> </span><br />下次模拟器启动的时候就会在%TEMP%目录下生成日志文件epocwind.out<br /></span></span><span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span">可以用记事本打开</span></span></font></p>
<p><span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span">打开日志文件后，发现最后几行是</span></span></p>
<p><span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span"><span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span">7.870 Thread eiksrvs.exe::EikAppUiServerThread Panic KERN-EXEC 3<span class="Apple-converted-space"> </span><br />7.870 Thread eiksrvs.exe::UikonWatchers Panic KERN-EXEC 3<span class="Apple-converted-space"> </span><br />7.870 Thread eiksrvs.exe::ViewServerThread Panic KERN-EXEC 3<span class="Apple-converted-space"> </span><br />7.870 FAULT: KERN 0x00000004 (4) <span class="Apple-converted-space"></span></span></span></span></span></p>
<p><span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span"><span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span"><span class="Apple-converted-space">又在帖子上看到，有人推断这样的日志很可能是由声卡的问题导致的<br />原话是这样的&#8220;<span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span">有些机器的声卡不接mic的话，程序会无法使用mic，造成S60 模拟器启动失败，解决方法，将计算机的mic接口上接上mic，然后启动模拟器&#8221;</span></span></span></span></span></span></span></p>
<p><span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span"><span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span"><span class="Apple-converted-space"><span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 23px; font-size: 14px" class="Apple-style-span">试了一下，果然成功了</span></span></span></span></span></span></span></p><br /><br />原文链接<a href="http://hi.baidu.com/goengine/blog/item/0f202d074c6704c67b8947d1.html">http://hi.baidu.com/goengine/blog/item/0f202d074c6704c67b8947d1.html</a><img src ="http://www.cppblog.com/hongtaozhy/aggbug/164843.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/hongtaozhy/" target="_blank">hadn't</a> 2012-02-02 18:08 <a href="http://www.cppblog.com/hongtaozhy/archive/2012/02/02/164843.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>HookLogger用不了？</title><link>http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161619.html</link><dc:creator>hadn't</dc:creator><author>hadn't</author><pubDate>Tue, 06 Dec 2011 14:40:00 GMT</pubDate><guid>http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161619.html</guid><wfw:comment>http://www.cppblog.com/hongtaozhy/comments/161619.html</wfw:comment><comments>http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161619.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/hongtaozhy/comments/commentRss/161619.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/hongtaozhy/services/trackbacks/161619.html</trackback:ping><description><![CDATA[<span style="widows: 2; text-transform: none; text-indent: 0px; letter-spacing: normal; border-collapse: separate; font: medium Simsun; white-space: normal; orphans: 2; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="line-height: 21px; font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; font-size: 14px" class="Apple-style-span">Hooklogger是Symbian<span style="font-family: 宋体">上调试内存泄露的好工具，但是自从换了win7 系统就发现用不了了，奇怪<br />要么是模拟器起不开 要么是泄露捕获不到 如果你也和我遇到了一样的情况，请试试我的方法<br /><br />1、保证你的SDK已经正常安装ok，EpocRoot在环境变量中正确<br />2、下载安装Hooklogger ，我是在csdn下的别人分享的文件，版本是0.42RC4，默认安装</span><span style="font-family: 宋体; color: red">注意不要安装到含空格的路径中</span><span style="font-family: 宋体"><br />3、cmd中输入</span><span style="font-family: 宋体; color: red">devices </span><span style="font-family: 宋体">会看到一行内容（我的如下，显示你的sdk就对了）<br /><font color="#ff0000"><span style="color: #0000ff">S60_5th_Edition_SDK_v1.0:com.nokia.s60 - default<br /></span><span style="color: #000000">4、输入setuphooks default<br /><br />5、启动hooklogger将General项如此设置 <img border="0" alt="" src="http://www.cppblog.com/images/cppblog_com/hongtaozhy/无标题.png" width="225" longdesc="" height="130" /><br />6</span><span style="color: #ff6600">、重点</span><span style="color: #000000">：Filters中选择 include only checked ;Browse for Exe选择你要监视的程序，也就是你自己写的程序，一般路径为 ......\epoc32\release\winscw\udeb\YourProject.exe<br />&nbsp;&nbsp; 这样选择后，能够保证Hooklogger不在监视其他进程，一则查看泄露容易，二则</span><span style="color: #ff6600">避免了其他进程收监视无法启动，导致模拟器无法启动的问题<br /></span><span style="color: #000000">7、启动carbide debug程序，如果中间被断 F8 继续<br /><br />我的如此就可以正常使用了，希望帮到他人</span></font></span></span></span><img src ="http://www.cppblog.com/hongtaozhy/aggbug/161619.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/hongtaozhy/" target="_blank">hadn't</a> 2011-12-06 22:40 <a href="http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161619.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>很容易出现的内存泄露情景</title><link>http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161617.html</link><dc:creator>hadn't</dc:creator><author>hadn't</author><pubDate>Tue, 06 Dec 2011 14:21:00 GMT</pubDate><guid>http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161617.html</guid><wfw:comment>http://www.cppblog.com/hongtaozhy/comments/161617.html</wfw:comment><comments>http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161617.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/hongtaozhy/comments/commentRss/161617.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/hongtaozhy/services/trackbacks/161617.html</trackback:ping><description><![CDATA[<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000">iImageCompress&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;EImageCompress::NewL(</span><span style="color: #0000ff">this</span><span style="color: #000000">&nbsp;);</span></div>iImageCompress 是个类的成员函数，<span style="color: ">这句代码</span><span style="color: red">为项目原有代码的函数中</span><span style="color: #ff0000">的一</span><span style="color: #ff0000">段。</span><br /><span style="color: #ff0000">现由于功</span><span style="color: #ff0000">能的</span><span style="color: #ff0000">添加</span>，这个<span style="color: #ff0000">函数被多次调用（原函数仅可能被调用一次，所以未产生问题）</span>，而这个指针iImageCompress 在被重新赋值之前并未释放掉原有指向资源，而产生内存泄露<br />所以，写代码要养成良好习惯，例如如上的情景，一定要写成
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000"> delete iImageCompress;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /> iImageCompress </span><span style="color: #000000">=</span><span style="color: #000000"> NULL;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /> <br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /> iImageCompress </span><span style="color: #000000">=</span><span style="color: #000000"> EImageCompress::NewL(</span><span style="color: #0000ff">this</span><span style="color: #000000"> );<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /> </span></div><br />这样。<img src ="http://www.cppblog.com/hongtaozhy/aggbug/161617.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/hongtaozhy/" target="_blank">hadn't</a> 2011-12-06 22:21 <a href="http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161617.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>删不光的指针数组</title><link>http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161589.html</link><dc:creator>hadn't</dc:creator><author>hadn't</author><pubDate>Tue, 06 Dec 2011 07:54:00 GMT</pubDate><guid>http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161589.html</guid><wfw:comment>http://www.cppblog.com/hongtaozhy/comments/161589.html</wfw:comment><comments>http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161589.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/hongtaozhy/comments/commentRss/161589.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/hongtaozhy/services/trackbacks/161589.html</trackback:ping><description><![CDATA[@import url(http://www.cppblog.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
犯了一个这样的错误，代码如下：
<div style="border-left-color: #cccccc; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; padding-top: 4px; "><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;CUpLoadQueueDataModel::DoClearAway()<br />
<img id="Codehighlighter1_42_320_Open_Image" onclick="this.style.display='none'; Codehighlighter1_42_320_Open_Text.style.display='none'; Codehighlighter1_42_320_Closed_Image.style.display='inline'; Codehighlighter1_42_320_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_42_320_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_42_320_Closed_Text.style.display='none'; Codehighlighter1_42_320_Open_Image.style.display='inline'; Codehighlighter1_42_320_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_42_320_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_42_320_Open_Text"><span style="color: #000000">{<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(TInt&nbsp;index&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;&nbsp;index&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">&nbsp;iDataItemArray.Count();&nbsp;index</span><span style="color: #000000">++</span><span style="color: #000000">&nbsp;)<br />
<img id="Codehighlighter1_114_296_Open_Image" onclick="this.style.display='none'; Codehighlighter1_114_296_Open_Text.style.display='none'; Codehighlighter1_114_296_Closed_Image.style.display='inline'; Codehighlighter1_114_296_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_114_296_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_114_296_Closed_Text.style.display='none'; Codehighlighter1_114_296_Open_Image.style.display='inline'; Codehighlighter1_114_296_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_114_296_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_114_296_Open_Text"><span style="color: #000000">{<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(iDataItemArray[index])<br />
<img id="Codehighlighter1_158_252_Open_Image" onclick="this.style.display='none'; Codehighlighter1_158_252_Open_Text.style.display='none'; Codehighlighter1_158_252_Closed_Image.style.display='inline'; Codehighlighter1_158_252_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_158_252_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_158_252_Closed_Text.style.display='none'; Codehighlighter1_158_252_Open_Image.style.display='inline'; Codehighlighter1_158_252_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_158_252_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_158_252_Open_Text"><span style="color: #000000">{<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delete&nbsp;iDataItemArray[index];<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iDataItemArray[index]&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;NULL;<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iDataItemArray.Remove(index);<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;&nbsp;&nbsp;&nbsp;SaveCacheDataL();<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" />}</span></span></div>
粗看没什么问题，仔细想想不对，循环中Remove了数组成员，iDataItemArray.Count()这个值一直在减少并且Array的结构在改变，假如有0 1 2 3 4 5六个元素，按照上面的代码执行则实际只会删除 0 2 5 三个元素就结束循环了- -|<br />
修改后代码如下：
<div style="border-left-color: #cccccc; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; padding-top: 4px; "><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><span style="color: #0000ff">void</span><span style="color: #000000"> CUpLoadQueueDataModel::DoClearAway()<br />
<img id="Codehighlighter1_42_312_Open_Image" onclick="this.style.display='none'; Codehighlighter1_42_312_Open_Text.style.display='none'; Codehighlighter1_42_312_Closed_Image.style.display='inline'; Codehighlighter1_42_312_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_42_312_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_42_312_Closed_Text.style.display='none'; Codehighlighter1_42_312_Open_Image.style.display='inline'; Codehighlighter1_42_312_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_42_312_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_42_312_Open_Text"><span style="color: #000000">{<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> TInt index </span><span style="color: #000000">=</span><span style="color: #000000"> iDataItemArray.Count() </span><span style="color: #000000">-</span><span style="color: #000000"> </span><span style="color: #000000">1</span><span style="color: #000000">;<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> </span><span style="color: #0000ff">while</span><span style="color: #000000">( index </span><span style="color: #000000">&gt;=</span><span style="color: #000000"> </span><span style="color: #000000">0</span><span style="color: #000000"> </span><span style="color: #000000">&amp;&amp;</span><span style="color: #000000"> iDataItemArray[index] )<br />
<img id="Codehighlighter1_142_288_Open_Image" onclick="this.style.display='none'; Codehighlighter1_142_288_Open_Text.style.display='none'; Codehighlighter1_142_288_Closed_Image.style.display='inline'; Codehighlighter1_142_288_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_142_288_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_142_288_Closed_Text.style.display='none'; Codehighlighter1_142_288_Open_Image.style.display='inline'; Codehighlighter1_142_288_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif"> </span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_142_288_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_142_288_Open_Text"><span style="color: #000000">{<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> delete iDataItemArray[index];<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> iDataItemArray[index] </span><span style="color: #000000">=</span><span style="color: #000000"> NULL;<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> <br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> iDataItemArray.Remove(index);<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> index</span><span style="color: #000000">--</span><span style="color: #000000">;<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" /> }</span></span><span style="color: #000000"><br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" />&nbsp;SaveCacheDataL();<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" />}</span></span></div>
每次删最后面的。。。测试正常运行，再考虑考虑 感觉如下写法更好：<br />
<div style="border-left-color: #cccccc; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; padding-top: 4px; "><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /><span style="color: #0000ff">void</span><span style="color: #000000"> CUpLoadQueueDataModel::DoClearAway()<br />
<img id="Codehighlighter1_42_241_Open_Image" onclick="this.style.display='none'; Codehighlighter1_42_241_Open_Text.style.display='none'; Codehighlighter1_42_241_Closed_Image.style.display='inline'; Codehighlighter1_42_241_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_42_241_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_42_241_Closed_Text.style.display='none'; Codehighlighter1_42_241_Open_Image.style.display='inline'; Codehighlighter1_42_241_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_42_241_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_42_241_Open_Text"><span style="color: #000000">{ <br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> </span><span style="color: #0000ff">while</span><span style="color: #000000">( iDataItemArray.Count() )<br />
<img id="Codehighlighter1_88_217_Open_Image" onclick="this.style.display='none'; Codehighlighter1_88_217_Open_Text.style.display='none'; Codehighlighter1_88_217_Closed_Image.style.display='inline'; Codehighlighter1_88_217_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_88_217_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_88_217_Closed_Text.style.display='none'; Codehighlighter1_88_217_Open_Image.style.display='inline'; Codehighlighter1_88_217_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif"> </span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_88_217_Closed_Text"><img alt="" src="http://www.cppblog.com/Images/dot.gif" /></span><span id="Codehighlighter1_88_217_Open_Text"><span style="color: #000000">{<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> delete iDataItemArray[</span><span style="color: #000000">0</span><span style="color: #000000">];<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> iDataItemArray[</span><span style="color: #000000">0</span><span style="color: #000000">] </span><span style="color: #000000">=</span><span style="color: #000000"> NULL;<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> <br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> iDataItemArray.Remove(0); <br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" /> }</span></span><span style="color: #000000"><br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif" /> SaveCacheDataL();<br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif" />}</span></span><span style="color: #000000"><br />
<img alt="" align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif" /></span></div>
<br />
现在想想，直接iDataItemArray.ResetAndDestroy()<img src ="http://www.cppblog.com/hongtaozhy/aggbug/161589.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/hongtaozhy/" target="_blank">hadn't</a> 2011-12-06 15:54 <a href="http://www.cppblog.com/hongtaozhy/archive/2011/12/06/161589.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Json</title><link>http://www.cppblog.com/hongtaozhy/archive/2011/12/05/161538.html</link><dc:creator>hadn't</dc:creator><author>hadn't</author><pubDate>Mon, 05 Dec 2011 14:59:00 GMT</pubDate><guid>http://www.cppblog.com/hongtaozhy/archive/2011/12/05/161538.html</guid><wfw:comment>http://www.cppblog.com/hongtaozhy/comments/161538.html</wfw:comment><comments>http://www.cppblog.com/hongtaozhy/archive/2011/12/05/161538.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/hongtaozhy/comments/commentRss/161538.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/hongtaozhy/services/trackbacks/161538.html</trackback:ping><description><![CDATA[<font size="-1"><em>JSON</em>(JavaScript Object Notation) 是一种轻量级的数据交换格式<br />
确实简单易用，文件大小合适<br />
<span style="font-size: 12px; line-height: 18px;">http://json.org/ 这里还提供了多种语言的解析代码供选择<br />
用Json就像用自己的数组一样，C/C++的风格很好理解</span></font><img src ="http://www.cppblog.com/hongtaozhy/aggbug/161538.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/hongtaozhy/" target="_blank">hadn't</a> 2011-12-05 22:59 <a href="http://www.cppblog.com/hongtaozhy/archive/2011/12/05/161538.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>上班之后经常用的几个小工具</title><link>http://www.cppblog.com/hongtaozhy/archive/2011/11/21/160630.html</link><dc:creator>hadn't</dc:creator><author>hadn't</author><pubDate>Mon, 21 Nov 2011 03:41:00 GMT</pubDate><guid>http://www.cppblog.com/hongtaozhy/archive/2011/11/21/160630.html</guid><wfw:comment>http://www.cppblog.com/hongtaozhy/comments/160630.html</wfw:comment><comments>http://www.cppblog.com/hongtaozhy/archive/2011/11/21/160630.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/hongtaozhy/comments/commentRss/160630.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/hongtaozhy/services/trackbacks/160630.html</trackback:ping><description><![CDATA[1、计算器<br />
2、画图<br />
3、字符映射表<br />
<br />
小东西简单实用，怪不得系统自带呢<img src ="http://www.cppblog.com/hongtaozhy/aggbug/160630.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/hongtaozhy/" target="_blank">hadn't</a> 2011-11-21 11:41 <a href="http://www.cppblog.com/hongtaozhy/archive/2011/11/21/160630.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>犯了一个低级错误</title><link>http://www.cppblog.com/hongtaozhy/archive/2011/11/18/160462.html</link><dc:creator>hadn't</dc:creator><author>hadn't</author><pubDate>Fri, 18 Nov 2011 11:36:00 GMT</pubDate><guid>http://www.cppblog.com/hongtaozhy/archive/2011/11/18/160462.html</guid><wfw:comment>http://www.cppblog.com/hongtaozhy/comments/160462.html</wfw:comment><comments>http://www.cppblog.com/hongtaozhy/archive/2011/11/18/160462.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/hongtaozhy/comments/commentRss/160462.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/hongtaozhy/services/trackbacks/160462.html</trackback:ping><description><![CDATA[零是false非零是true，程序里把负一当false来对待了，蝴蝶效应，造成了在程序另一个地方崩溃，害得溪总调了n9，各种回滚才查出来，当以此为鉴。<img src ="http://www.cppblog.com/hongtaozhy/aggbug/160462.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/hongtaozhy/" target="_blank">hadn't</a> 2011-11-18 19:36 <a href="http://www.cppblog.com/hongtaozhy/archive/2011/11/18/160462.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>