﻿<?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++博客-wifecooky</title><link>http://www.cppblog.com/wifecooky/</link><description>学一点，记一点</description><language>zh-cn</language><lastBuildDate>Wed, 08 Apr 2026 21:52:43 GMT</lastBuildDate><pubDate>Wed, 08 Apr 2026 21:52:43 GMT</pubDate><ttl>60</ttl><item><title>关于运行时类型识别typeid </title><link>http://www.cppblog.com/wifecooky/archive/2010/11/08/132955.html</link><dc:creator>楚天清秋</dc:creator><author>楚天清秋</author><pubDate>Mon, 08 Nov 2010 01:23:00 GMT</pubDate><guid>http://www.cppblog.com/wifecooky/archive/2010/11/08/132955.html</guid><wfw:comment>http://www.cppblog.com/wifecooky/comments/132955.html</wfw:comment><comments>http://www.cppblog.com/wifecooky/archive/2010/11/08/132955.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/wifecooky/comments/commentRss/132955.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wifecooky/services/trackbacks/132955.html</trackback:ping><description><![CDATA[<p>在程序中，当我们对多态类的基类指针使用typeid，就可以在运行时确定指针指向对象的实际类型，并输出对象类型的名字。</p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#include&nbsp;&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">&nbsp;cstdlib&nbsp;</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>#include&nbsp;&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">&nbsp;iostream&nbsp;</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top>#include&nbsp;&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">&nbsp;typeinfo&nbsp;</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000">&nbsp;&nbsp;std;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img id=Codehighlighter1_104_144_Open_Image onclick="this.style.display='none'; Codehighlighter1_104_144_Open_Text.style.display='none'; Codehighlighter1_104_144_Closed_Image.style.display='inline'; Codehighlighter1_104_144_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_104_144_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_104_144_Closed_Text.style.display='none'; Codehighlighter1_104_144_Open_Image.style.display='inline'; Codehighlighter1_104_144_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;&nbsp;B</span><span id=Codehighlighter1_104_144_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_104_144_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;:<br><img id=Codehighlighter1_141_142_Open_Image onclick="this.style.display='none'; Codehighlighter1_141_142_Open_Text.style.display='none'; Codehighlighter1_141_142_Closed_Image.style.display='inline'; Codehighlighter1_141_142_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_141_142_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_141_142_Closed_Text.style.display='none'; Codehighlighter1_141_142_Open_Image.style.display='inline'; Codehighlighter1_141_142_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;&nbsp;fun()</span><span id=Codehighlighter1_141_142_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_141_142_Open_Text><span style="COLOR: #000000">{}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img id=Codehighlighter1_167_197_Open_Image onclick="this.style.display='none'; Codehighlighter1_167_197_Open_Text.style.display='none'; Codehighlighter1_167_197_Closed_Image.style.display='inline'; Codehighlighter1_167_197_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_167_197_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_167_197_Closed_Text.style.display='none'; Codehighlighter1_167_197_Open_Image.style.display='inline'; Codehighlighter1_167_197_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;&nbsp;D:&nbsp;</span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;&nbsp;B</span><span id=Codehighlighter1_167_197_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_167_197_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;:<br><img id=Codehighlighter1_194_195_Open_Image onclick="this.style.display='none'; Codehighlighter1_194_195_Open_Text.style.display='none'; Codehighlighter1_194_195_Closed_Image.style.display='inline'; Codehighlighter1_194_195_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_194_195_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_194_195_Closed_Text.style.display='none'; Codehighlighter1_194_195_Open_Image.style.display='inline'; Codehighlighter1_194_195_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;&nbsp;fun()</span><span id=Codehighlighter1_194_195_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_194_195_Open_Text><span style="COLOR: #000000">{}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;&nbsp;main()<br><img id=Codehighlighter1_213_597_Open_Image onclick="this.style.display='none'; Codehighlighter1_213_597_Open_Text.style.display='none'; Codehighlighter1_213_597_Closed_Image.style.display='inline'; Codehighlighter1_213_597_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_213_597_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_213_597_Closed_Text.style.display='none'; Codehighlighter1_213_597_Open_Image.style.display='inline'; Codehighlighter1_213_597_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_213_597_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_213_597_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;B&nbsp;&nbsp;</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">&nbsp;p;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;D&nbsp;ob;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;p&nbsp;</span><span style="COLOR: #000000">=&amp;</span><span style="COLOR: #000000">&nbsp;ob;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;typeid(*p).name()=&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;typeid(&nbsp;</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">&nbsp;p).name()&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;endl;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(typeid(&nbsp;</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">&nbsp;p)&nbsp;</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">&nbsp;typeid(D))<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;typeid(*p)==typeid(D)&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;endl;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;typeid(p).name()=&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;typeid(p).name()&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;endl;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(typeid(p)&nbsp;</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">&nbsp;typeid(B&nbsp;</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">&nbsp;))<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;typeid(p)==typeid(B*)&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000">&nbsp;endl;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;system(&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;pause&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">&nbsp;;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span></div>
<br>这段code在VC++6.0中编译时，提示如下<br>warning C4541: 'typeid' used on polymorphic type 'class B' with /GR-; unpredictable behavior may result<br>编译后运行时错误。不知是不是此版本的VC++不符合C++标准？<br><br>在Devcpp（g++）中编译运行得到的结果是<br>typeid(*p).name()=1D<br>typeid(*p)==typeid(D)<br>typeid(p).name()=P1B<br>typeid(p)==typeid(B*)<br>说明用typeid作用于*p得到的的确是D类型，而用typeid作用于p得到的依然是B类的指针类型<br><br>如果typeid被作用于非多态类指针，那么我们得到的是指针被声明的类型，也就是说，此时typeid并不会返回指针所指向对象的实际类型。<br>如果将class B中的virtual去掉，在编译运行得到的结果是<br>typeid(*p).name()=1B<br>typeid(p).name()=P1B<br>typeid(p)==typeid(B*)<br><br>由此可见，在任何时刻都可以用基类指针指向派生类对象，而用typeid(*p)确定p指向的对象时，只当基类为多态类时才能真正确定p在运行时指向的实际类型。<br><br>VC默认不启动RTTI，即&#8220;运行时期类型识别&#8221;，如果在你的程序用到了RTTI，比如typeid，你必须明确告诉编译器启动RTTI，这样VC才能正确编译 <br>选择菜单Project-&gt;settings-&gt;c/c++-&gt;category-&gt;c++ language,将Enable Run-Time Type Infomation(RTTI)选中 <br>
<img src ="http://www.cppblog.com/wifecooky/aggbug/132955.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wifecooky/" target="_blank">楚天清秋</a> 2010-11-08 09:23 <a href="http://www.cppblog.com/wifecooky/archive/2010/11/08/132955.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>编程要像扁鹊的大哥那样</title><link>http://www.cppblog.com/wifecooky/archive/2010/09/06/126022.html</link><dc:creator>楚天清秋</dc:creator><author>楚天清秋</author><pubDate>Mon, 06 Sep 2010 08:28:00 GMT</pubDate><guid>http://www.cppblog.com/wifecooky/archive/2010/09/06/126022.html</guid><wfw:comment>http://www.cppblog.com/wifecooky/comments/126022.html</wfw:comment><comments>http://www.cppblog.com/wifecooky/archive/2010/09/06/126022.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/wifecooky/comments/commentRss/126022.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wifecooky/services/trackbacks/126022.html</trackback:ping><description><![CDATA[<p>扁鹊曰：&#8220;长兄于病视神，未有形而除之，故名不出于家。中兄治病，其在毫毛，故名不出于闾。若扁鹊者，镵血脉，投毒药，副肌肤，闲而名出闻于诸侯&#8221;。</p>
<p>大意是，&#8220;我长兄治病，是治于病情未发作之前，由于一般人不知道他事先能铲除病因，所以他的名气无法传出去。我中兄治病，是治于病情初起之时，一般人以为他只能治轻微的小病，所以他的名气只及于乡里。而我是治于病情严重之时，在经脉上穿针管来放血，在皮肤上敷药，所以都以为我的医术最高明，名气因此响遍天下。&#8221;</p>
<p>程序员也类此，有良好的编程素养，扎实的语言功底（深入了解所用语言，而不是限于程序能编译通过）才能写出BUG少的程序，这是训练的重点。在编程时避免一个BUG，比在运行时，解决一个BUG，要容易不止千倍吧。</p>
<span class=diarytitle><font color=#cc9933></font></span>
<img src ="http://www.cppblog.com/wifecooky/aggbug/126022.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wifecooky/" target="_blank">楚天清秋</a> 2010-09-06 16:28 <a href="http://www.cppblog.com/wifecooky/archive/2010/09/06/126022.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>电脑启动途中，显示器突然 No signal</title><link>http://www.cppblog.com/wifecooky/archive/2010/09/01/125534.html</link><dc:creator>楚天清秋</dc:creator><author>楚天清秋</author><pubDate>Wed, 01 Sep 2010 08:40:00 GMT</pubDate><guid>http://www.cppblog.com/wifecooky/archive/2010/09/01/125534.html</guid><wfw:comment>http://www.cppblog.com/wifecooky/comments/125534.html</wfw:comment><comments>http://www.cppblog.com/wifecooky/archive/2010/09/01/125534.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/wifecooky/comments/commentRss/125534.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wifecooky/services/trackbacks/125534.html</trackback:ping><description><![CDATA[<p>组装完两台电脑，调试各个组件的功能是否正常时发现的问题。<br><br>由于显示器换来换去很麻烦，两台交替调试时，就只更换主机。<br>结果系统启动后，到Windows Xp 的进度条界面后，显示器突然就</p>
显示No signal，然后就啥反应没了，不过看指示灯，系统应该是正常启动了。<br><br>搞了半天没查出原因，后来还是在前辈的提示下找到了原因。<br>具体解决办法如下：<br><br>进入安全模式， 设备管理器-》显示卡&nbsp;&nbsp;&nbsp; 里面会有两个相同的Graphics Controller，<br>点击其中一个，按右键，在底部的下拉框中选择&#8220;不要使用这个设备（停用）&#8221;。<br><br>重启，回复正常！
<img src ="http://www.cppblog.com/wifecooky/aggbug/125534.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wifecooky/" target="_blank">楚天清秋</a> 2010-09-01 16:40 <a href="http://www.cppblog.com/wifecooky/archive/2010/09/01/125534.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>cout重定向到文件 (转)</title><link>http://www.cppblog.com/wifecooky/archive/2010/08/15/123470.html</link><dc:creator>楚天清秋</dc:creator><author>楚天清秋</author><pubDate>Sat, 14 Aug 2010 16:16:00 GMT</pubDate><guid>http://www.cppblog.com/wifecooky/archive/2010/08/15/123470.html</guid><wfw:comment>http://www.cppblog.com/wifecooky/comments/123470.html</wfw:comment><comments>http://www.cppblog.com/wifecooky/archive/2010/08/15/123470.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/wifecooky/comments/commentRss/123470.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wifecooky/services/trackbacks/123470.html</trackback:ping><description><![CDATA[<p>cout默认是与监视器（屏幕）相连，cout出来的内容会输出到屏幕上，通常是会在命令行窗口之中。但有时，我们希望将cout出来的具体日志、错误信息写到某个文件之中，而屏幕上仅仅显示出当前进行的任务，以及程序运行状态等信息。我们可以使用下面重定向的方式来实现：</p>
<span style="COLOR: #008080">1</span> <span style="COLOR: #000000">#include </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">stdafx.h</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">2</span> <span style="COLOR: #000000">#include </span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">3</span> <span style="COLOR: #000000">#include </span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">fstream</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">4</span> <span style="COLOR: #000000"><br></span><span style="COLOR: #008080">5</span> <span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> argc, </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> argv[])<br></span><span style="COLOR: #008080">6</span> <span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">7</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; </span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000"> std;<br></span><span style="COLOR: #008080">8</span> <span style="COLOR: #000000"><br></span><span style="COLOR: #008080">9</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; cout </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Hello, Let's begin a test of cout to file.</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">10</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 保存cout流缓冲区指针</span><span style="COLOR: #008000"><br></span><span style="COLOR: #008080">11</span> <span style="COLOR: #008000">&nbsp;</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; streambuf</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> coutBuf </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> cout.rdbuf();<br></span><span style="COLOR: #008080">12</span> <span style="COLOR: #000000"><br></span><span style="COLOR: #008080">13</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; ofstream of(</span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">out.txt</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">);<br></span><span style="COLOR: #008080">14</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 获取文件out.txt流缓冲区指针</span><span style="COLOR: #008000"><br></span><span style="COLOR: #008080">15</span> <span style="COLOR: #008000">&nbsp;</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; streambuf</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> fileBuf </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> of.rdbuf();<br></span><span style="COLOR: #008080">16</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; <br></span><span style="COLOR: #008080">17</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 设置cout流缓冲区指针为out.txt的流缓冲区指针</span><span style="COLOR: #008000"><br></span><span style="COLOR: #008080">18</span> <span style="COLOR: #008000">&nbsp;</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; cout.rdbuf(fileBuf);<br></span><span style="COLOR: #008080">19</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; cout </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Name </span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Chen</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">20</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; cout </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Sex&nbsp; </span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Female</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">21</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; cout </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">E-mail</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Chen@qq.com</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">22</span> <span style="COLOR: #000000"><br></span><span style="COLOR: #008080">23</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; of.flush();<br></span><span style="COLOR: #008080">24</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; of.close();<br></span><span style="COLOR: #008080">25</span> <span style="COLOR: #000000"><br></span><span style="COLOR: #008080">26</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 恢复cout原来的流缓冲区指针</span><span style="COLOR: #008000"><br></span><span style="COLOR: #008080">27</span> <span style="COLOR: #008000">&nbsp;</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; cout.rdbuf(coutBuf);<br></span><span style="COLOR: #008080">28</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; cout </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Write Personal Information over...</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">&lt;&lt;</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">29</span> <span style="COLOR: #000000"><br></span><span style="COLOR: #008080">30</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; system(</span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">PAUSE</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">);<br></span><span style="COLOR: #008080">31</span> <span style="COLOR: #000000">&nbsp;&nbsp;&nbsp; </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">0</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">32</span> <span style="COLOR: #000000">}</span> 
<img src ="http://www.cppblog.com/wifecooky/aggbug/123470.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wifecooky/" target="_blank">楚天清秋</a> 2010-08-15 00:16 <a href="http://www.cppblog.com/wifecooky/archive/2010/08/15/123470.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>求24点 </title><link>http://www.cppblog.com/wifecooky/archive/2010/07/16/120569.html</link><dc:creator>楚天清秋</dc:creator><author>楚天清秋</author><pubDate>Fri, 16 Jul 2010 09:31:00 GMT</pubDate><guid>http://www.cppblog.com/wifecooky/archive/2010/07/16/120569.html</guid><wfw:comment>http://www.cppblog.com/wifecooky/comments/120569.html</wfw:comment><comments>http://www.cppblog.com/wifecooky/archive/2010/07/16/120569.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/wifecooky/comments/commentRss/120569.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wifecooky/services/trackbacks/120569.html</trackback:ping><description><![CDATA[<p>24点是一种很流行的游戏，给定四个数，用加减乘除四种运算，每个数用一次，凑成24</p>
<p>1. 3， 3， 8， 8 每个数只能用一次，只能用加减乘除</p>
<p>2. 3， 3， 7， 7 每个数只能用一次，只能用加减乘除</p>
<p>上面这两个题的关键是运用分数，答案如下</p>
<p>1. 8 /（3 - 3 / 8）</p>
<p>2. （3 + 3 / 7）&#215; 7</p>
<p>&nbsp;</p>
<p>3. 1， 1， 1， 1 每个数只能用一次，可以用任何数学方法</p>
<p>这个题做起来很纠结，没用掉一个1都是如此的心痛！2&#215;2也不过4矣！乘方也不行啊？什么办法能快速增长呢？也许你想到了，阶乘！答案</p>
<p>1 + 1 + 1 + 1 = 4</p>
<p>4! = 24</p>
<img src ="http://www.cppblog.com/wifecooky/aggbug/120569.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wifecooky/" target="_blank">楚天清秋</a> 2010-07-16 17:31 <a href="http://www.cppblog.com/wifecooky/archive/2010/07/16/120569.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>常见开源协议（转） </title><link>http://www.cppblog.com/wifecooky/archive/2010/07/15/120409.html</link><dc:creator>楚天清秋</dc:creator><author>楚天清秋</author><pubDate>Thu, 15 Jul 2010 00:56:00 GMT</pubDate><guid>http://www.cppblog.com/wifecooky/archive/2010/07/15/120409.html</guid><wfw:comment>http://www.cppblog.com/wifecooky/comments/120409.html</wfw:comment><comments>http://www.cppblog.com/wifecooky/archive/2010/07/15/120409.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/wifecooky/comments/commentRss/120409.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wifecooky/services/trackbacks/120409.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.cppblog.com/wifecooky/archive/2010/07/15/120409.html'>阅读全文</a><img src ="http://www.cppblog.com/wifecooky/aggbug/120409.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wifecooky/" target="_blank">楚天清秋</a> 2010-07-15 08:56 <a href="http://www.cppblog.com/wifecooky/archive/2010/07/15/120409.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>BCB的RadioGroup控件的ItemIndex属性BUG！</title><link>http://www.cppblog.com/wifecooky/archive/2010/07/05/119354.html</link><dc:creator>楚天清秋</dc:creator><author>楚天清秋</author><pubDate>Mon, 05 Jul 2010 07:53:00 GMT</pubDate><guid>http://www.cppblog.com/wifecooky/archive/2010/07/05/119354.html</guid><wfw:comment>http://www.cppblog.com/wifecooky/comments/119354.html</wfw:comment><comments>http://www.cppblog.com/wifecooky/archive/2010/07/05/119354.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/wifecooky/comments/commentRss/119354.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wifecooky/services/trackbacks/119354.html</trackback:ping><description><![CDATA[<p>环境WindowsXP，BCB6.0（UPD4 (English)<br>Form1（主Form），Form1上有Button1，点击Button1显示Form2。<br>Form2上有一个RadioGroup1和Edit1，在Form2的OnShow事件中，<br>进行RadioGroup1-&gt;ItemIndex = StrToInt(Edit1-&gt;Text);赋值操作。Edit1-&gt;Text默认值0。<br>Form2显示后，在界面上选择与StrToInt(Edit1-&gt;Text)不同的选项后关闭Form2。假设选择了第二项。<br>回到Form1，重新打开Form2，这时应该显示的是RadioGroup1-&gt;ItemIndex = 0；<br>可是结果却显示为第二项。<br><br><br>PS：Form1，Form2都是自动创建的Form。<br><br>From1.cpp代码如下<br>//----------------------------Head Begin-----------------------------------------------<br>#ifndef Unit1H<br>#define Unit1H<br>#include &lt;Classes.hpp&gt;<br>#include &lt;Controls.hpp&gt;<br>#include &lt;StdCtrls.hpp&gt;<br>#include &lt;Forms.hpp&gt;<br>#include &lt;ExtCtrls.hpp&gt;<br>//---------------------------------------------------------------------------<br>class TForm1 : public TForm<br>{<br>__published:&nbsp;// IDE-managed Components<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TButton *Button1;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; void __fastcall Button1Click(TObject *Sender);<br>private:&nbsp;// User declarations<br>public:&nbsp;&nbsp;// User declarations<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; __fastcall TForm1(TComponent* Owner);<br>};<br>//---------------------------------------------------------------------------<br>extern PACKAGE TForm1 *Form1;<br>//---------------------------------------------------------------------------<br>#endif<br>//---------------------------Head End------------------------------------------------</p>
<p><br>//---------------------------Cpp Begin------------------------------------------------<br>#include &lt;vcl.h&gt;<br>#pragma hdrstop</p>
<p>#include "Unit1.h"<br>#include "Unit2.h"<br>//---------------------------------------------------------------------------<br>#pragma package(smart_init)<br>#pragma resource "*.dfm"<br>TForm1 *Form1;<br>//---------------------------------------------------------------------------<br>__fastcall TForm1::TForm1(TComponent* Owner)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : TForm(Owner)<br>{<br>}<br>//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::Button1Click(TObject *Sender)<br>{<br>&nbsp;&nbsp;&nbsp; Form2-&gt;Show();<br>}<br>//--------------------------Cpp End-------------------------------------------------<br><br><br>Form2代码如下<br>//--------------------------Form2&nbsp; Head Begin-------------------------------------------------</p>
<p>#ifndef Unit2H<br>#define Unit2H<br>//---------------------------------------------------------------------------<br>#include &lt;Classes.hpp&gt;<br>#include &lt;Controls.hpp&gt;<br>#include &lt;StdCtrls.hpp&gt;<br>#include &lt;Forms.hpp&gt;<br>#include &lt;ExtCtrls.hpp&gt;<br>//---------------------------------------------------------------------------<br>class TForm2 : public TForm<br>{<br>__published:&nbsp;// IDE-managed Components<br>&nbsp;&nbsp;&nbsp; TRadioGroup *RadioGroup1;<br>&nbsp;&nbsp;&nbsp; TEdit *Edit1;<br>&nbsp;&nbsp;&nbsp; void __fastcall FormShow(TObject *Sender);<br>private:&nbsp;// User declarations<br>public:&nbsp;&nbsp;// User declarations<br>&nbsp;&nbsp;&nbsp; __fastcall TForm2(TComponent* Owner);<br>};<br>//---------------------------------------------------------------------------<br>extern PACKAGE TForm2 *Form2;<br>//---------------------------------------------------------------------------<br>#endif<br>//-----------------------------Form2 Head End----------------------------------------------</p>
<p><br>//-----------------------------From2 Cpp Begin----------------------------------------------</p>
<p>#include &lt;vcl.h&gt;<br>#pragma hdrstop</p>
<p>#include "Unit2.h"<br>//---------------------------------------------------------------------------<br>#pragma package(smart_init)<br>#pragma resource "*.dfm"<br>TForm2 *Form2;<br>//---------------------------------------------------------------------------<br>__fastcall TForm2::TForm2(TComponent* Owner)<br>&nbsp;&nbsp;&nbsp; : TForm(Owner)<br>{<br>}<br>//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm2::FormShow(TObject *Sender)<br>{<br>&nbsp;&nbsp;&nbsp; RadioGroup1-&gt;ItemIndex = StrToInt(Edit1-&gt;Text);</p>
<p>}<br>//------------------------------From2 Cpp End---------------------------------------------<br><br><br><span style="COLOR: #ff0000">解决方法：<br>在TForm2::FormShow加入RadioGroup1-&gt;SetFocus();&nbsp;</span></p>
<p style="COLOR: #ff0000">void __fastcall TForm2::FormShow(TObject *Sender)<br>{<br>&nbsp;&nbsp;&nbsp; RadioGroup1-&gt;SetFocus();&nbsp;//加入<br>&nbsp;&nbsp;&nbsp; RadioGroup1-&gt;ItemIndex = StrToInt(Edit1-&gt;Text);</p>
<p>}<br></p>
<img src ="http://www.cppblog.com/wifecooky/aggbug/119354.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wifecooky/" target="_blank">楚天清秋</a> 2010-07-05 15:53 <a href="http://www.cppblog.com/wifecooky/archive/2010/07/05/119354.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>十年前你没看懂《大话西游》，十年前你笑了，十年后你哭了……(转)</title><link>http://www.cppblog.com/wifecooky/archive/2010/07/01/119052.html</link><dc:creator>楚天清秋</dc:creator><author>楚天清秋</author><pubDate>Thu, 01 Jul 2010 04:01:00 GMT</pubDate><guid>http://www.cppblog.com/wifecooky/archive/2010/07/01/119052.html</guid><wfw:comment>http://www.cppblog.com/wifecooky/comments/119052.html</wfw:comment><comments>http://www.cppblog.com/wifecooky/archive/2010/07/01/119052.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/wifecooky/comments/commentRss/119052.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wifecooky/services/trackbacks/119052.html</trackback:ping><description><![CDATA[<span id="span_Body">十年前你绝对没有看懂的《大话西游》，十年后你终于懂了&#8230;&#8230;这个世界上还有一个故事，叫做《大话西游》带你重
温永恒的经典 十年前你看你笑了，十年后你看你哭了&#8230;&#8230;<br><br>     这个世界上还有一个故事，叫做《大话西游》。<br><br>
世界是巨大的枷锁，你不得不重复自己或是别人的生活。<br>　　    记得长辈说过：年轻是一种罪过。他们说我们不成熟。<br><br>
真切地为自己的不俗喝彩，在深切的郁闷中，突然就看懂了《大话西游》的开头：
一位才华横溢又无法无天的青年（孙悟空），根本不喜欢世人摊派给他的大事业（西天取经）。他尤其受不了师父（唐僧）的唠唠叨叨，可世俗条规（观音）又不放
过他。为让他悔悟，心甘情愿地去取经，唐僧和观音达成妥协：让他五百年后重新做人。 这真是一个宿命的开始。<br><br>
九七一师兄曰：&#8220;大学的孩子都是玻璃罐里养蛤蟆，前途光明出路不大。&#8221;再贴切不过。大闹天宫无非是大学四年的黄金时光罢了，找到工作走上社会任你盖世的才
华浑身的个性也自有翻不出的五指山来压。只有戴上紧箍咒取经去，九九八十一难，做一个奇奇怪怪的佛。你别无选择。<br><br>
五百年后的悟空叫至尊宝，在五岳山从事一份很有前途的职业——
山贼。命运却要他扮演孙悟空，至尊宝只是个过渡罢了。蜘蛛精来了，白骨精来了，菩提老祖来了，牛魔王也来了&#8230;&#8230;都是棋子，安静地立在命棋盘的中央。<br>
他的路线是早定好的：（1）一个人给他三颗痣（2）戴上紧箍咒（3）打败牛魔王（4）西天取经。可怜的至尊宝什么都不知道，认认真真做山贼，还爱上了白骨
精，想和她结为百年之好。<br><br>　　　 所有的事都瞒着他接二连三地发生。<br>
给至尊宝三颗痣的人是紫霞仙子。谁说的：总有一个女孩出现，让男孩最终成为男人。而男人永远都不可能得到她，那简直是一定的。<br><br>
非常喜欢紫霞的开场白：&#8220;现在我郑重宣布，这座山上所有的东西都是我的，包括你。&#8221;那样的气贯云霄，像一个童话故事。<br>
而现实是：这个世界没有什么属于你，包括你自己。也许我们就是为了创造属于自己的东西才来到这个世上，因为年轻，所以押注于爱情。<br>
至尊宝拒绝了紫霞，他以为自己还爱晶晶。见到晶晶，他又发现紫霞才是真爱。命运一直在同他开玩笑：至尊宝忽然成了孙悟空，千辛万苦找晶晶又爱上了紫霞。而
抉择是那样残酷：要打败牛魔王救紫霞，就必须戴上紧箍咒做回神通广大的孙悟空；而戴上紧箍咒就不能有半点**，只有取经去。<br>
为至尊宝不平：不明白在这样的故事里为何爱情总要成为牺牲品，干嘛不让周星弛携紫霞纤纤小手——走先！我曾无数次在网上反映过类似意见，搞得很累。爱情是
那样美丽而脆弱，无法直面生活的琐碎和坚韧。哪段感情又没有绚烂的瞬间和艰难的长久，在一起就会幸福吗，未必。<br><br>
至尊宝挖开自己的心，看到了紫霞留在那里的一滴眼泪，毕竟曾经沧海过。
五百年又五百年，兜了一个大圈子又回到了原地。人没能战胜命运，而人的尊严却在抗争中得到了肯定，人的情感也必将不朽。
&#8220;生亦何欢，死亦何苦。&#8221;大彻大悟。<br><br>　　　 紧箍咒，圈住昔日的梦想，圈住棱角分明的个性。<br><br>
成熟是一个很痛的词，它不一定会得到，却一定会失去。<br><br>
永别了，**四溢的花样年华！永别了，神采飞扬的青春岁月！永别了，同学！永别了，爱人**！至此后漫漫长路我独行。<br><br>
望着荧幕上扛着金箍棒的悟空，忽地明白了本班男生什么自称光棍。向光棍行者们敬礼！<br><br>
全片最后一句台词是：&#8220;你看那个人，好奇怪哟，象一条狗。&#8221;<br>　　　 罗曼蒂克、海誓山盟、生死相许&#8230;&#8230;面对爱情这些都是琐碎，不值一提。<br>
爱情就是爱情，不是别的什么东西。<br>　　　 能与爱情同在的只有生命，其他都滚一边儿去。<br>　　　 你爱了，难道还不够吗？<br>
悟空爱了，不论晶晶还是紫霞，他都要将爱情进行到底。<br>　　　 晶晶爱了，那个弃她而去的悟空，&#8220;不能和喜欢的人在一起，做人又怎会开心。&#8221;<br>
紫霞爱了，&#8220;谁拔出我的紫青宝剑，谁就是我的如意郎君。&#8221;<br>　　　 爱一个人需要理由吗？<br>
孙悟空会爱白骨精，八戒爱上了蜘蛛精。紫霞爱他至深，因为他拔出了一把剑。<br><br>
故事里的人找爱人的理由永远千奇百怪：王子要用水晶鞋才能找到灰姑娘，薛宝钗要那有玉的人来配&#8230;&#8230;可生活永远现实得多，芸芸众生，谁又能许谁一个未来，自
欺欺人罢了。<br><br>　　　 有理由也好，没理由也罢，可还是要爱。让我去，过程就是结果，无悔。<br><br>
爱无须掩饰无须矫做无须患得患失，只要像紫霞一样说：&#8220;让我们立刻开始这段感情吧！先亲我一下。&#8221;<br>　　　 爱是身不由己。<br>
晶晶口中道：&#8220;我再也不会为这个男人心痛了。&#8221;可还是要为他拔剑与人拼命。<br>
至尊宝梦中也要叫紫霞的名字七百四十一次，不知道的人觉得紫霞一定欠了他很多钱。<br><br>
紫霞说：&#8220;就象飞蛾，明知会受伤也要扑到火上。&#8221; &#8220;我无力抗拒，向你狂奔去。&#8221;无可救药的痴迷。<br>　　　 爱是奋不顾身。<br>
至尊宝对晶晶说：&#8220;你杀了我吧，我不希望你看我的时候心里却想着别的人。&#8221;<br>　　　 晶晶以为：&#8220;都是骗我的。&#8221;跳下崖去。<br>
紫霞把身体挡在至尊宝面前，刺进牛魔王的铁叉里。<br>
一时间，以后的人生如何，大家都无所谓了。连那样宝贵的性命，也打算随时给爱情作了祭品。一个个一头扎进这情爱苦海，宁愿永生永世不得超生。<br>
爱深刻莫测。<br><br>　　　 三十娘流着泪说：&#8220;想我春三十娘貌美如花，却跟这么丑的人有了。&#8221;
这是多少美丽自负的女子的宿命：心中的他是能文能武翩翩少年，枕边人却鼾声如雷大腹便便。谁敢说多年后眼望自己的丈夫不会有如此感觉，真不知幸福还是心
酸。不过还是要为他挺身而去无限牺牲，像春三十娘为八戒放下断龙石与牛魔王同归于尽。<br><br>
晶晶爱悟空，至尊宝爱晶晶，紫霞爱至尊宝，&#8220;他爱你你爱我我爱他&#8221;，千古无解的方程。《白马啸西风》里说：&#8220;如果你深深爱着的人，却又深深爱上了别人，能
有什么法子？&#8221;<br><br>　　　　所以紫霞说：&#8220;爱一个人原来是那么痛苦。&#8221;
晶晶找不到那个抛弃她的悟空（象不象殷离），告诉至尊宝：&#8220;你经过五百年回来要找的不是我。&#8221;当年被他推开的紫霞已经悄无声息地抵达他灵魂的最深处，而他
却不自知。可紫霞死了：&#8220;我的意中人是个盖世英雄，有一天他会踩着七色的云彩来娶我，我猜中了前头，可是我猜不着这结局&#8230;&#8230;&#8221;<br>　　　　没有人猜得
中结局，一切随风而去。<br><br>　　　　恋爱的时候我们都不懂爱情，懂得爱情后却失去了可以相爱的时光。<br><br>　　　　最绝望不是他不
爱你或他离你而去，最绝望是你忘记了怎么去爱一个人，你已丧失了爱的能力。<br><br>　　　　请记住下面的台词：&#8220;曾经有一份真诚的爱情摆在我的面
前，但是我没有珍惜。等到了失去的时候才后悔莫及，尘世间最痛苦的事莫过于此。如果上天可以给我一个机会再来一次的话，我会对你说三个字&#8220;我爱你&#8221;。如果
非要把这份爱加上一个期限，我希望是一万年！&#8221;
也顺便记住这段话的原版，在王家卫的《重庆森林》里：&#8220;如果记忆是一个罐头，我希望它永远都不会过期，如果一定要加上一个期限的话，我希望是一万年。&#8221;<br>
至尊宝第一次说这番话是骗紫霞，第二次说已痛不欲生。 总有一天，你会在灵魂最温柔的一隅为她重复这段话，为了你们即将封存的一万年。
&#8220;如果有一天我忍不住问你，你一定要骗我。不管你心里有多么不愿意，你都不要告诉我你从来没有喜欢过我。&#8221;<br><br>　　　　此情可待成追忆<br>
只是当时已惘然！<br><br>谨把此文献给我的年轻和正年轻的朋友们。！<br><img alt="" src="http://upload3.mop.com/upload3/2010/05/23/05/1274607538397.jpg"><br><br></span><img src="file:///C:/DOCUME~1/PING/LOCALS~1/Temp/moz-screenshot.png" alt=""><img alt="" src="http://upload3.mop.com/upload3/2010/05/23/05/1274607543606.jpg"><br><img alt="" src="http://upload3.mop.com/upload3/2010/05/23/05/1274607546853.jpg"><br> <img src ="http://www.cppblog.com/wifecooky/aggbug/119052.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wifecooky/" target="_blank">楚天清秋</a> 2010-07-01 12:01 <a href="http://www.cppblog.com/wifecooky/archive/2010/07/01/119052.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>苹果引发的故事^_^（苹果习语的由来）</title><link>http://www.cppblog.com/wifecooky/archive/2010/06/20/118305.html</link><dc:creator>楚天清秋</dc:creator><author>楚天清秋</author><pubDate>Sun, 20 Jun 2010 05:56:00 GMT</pubDate><guid>http://www.cppblog.com/wifecooky/archive/2010/06/20/118305.html</guid><wfw:comment>http://www.cppblog.com/wifecooky/comments/118305.html</wfw:comment><comments>http://www.cppblog.com/wifecooky/archive/2010/06/20/118305.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/wifecooky/comments/commentRss/118305.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wifecooky/services/trackbacks/118305.html</trackback:ping><description><![CDATA[<p align=left><span>作为一种日常食物，苹果已经融入英语语言，这些精彩纷呈的苹果习语，拥有丰厚的历史、文化渊源和引人入胜的典故。</span></p>
<p align=left><span style="COLOR: #0000ff">1 apple of love 爱情的苹果<br></span>　　这个习语源于殖民时期的南美洲。当时在秘鲁的丛林中，生长着一种叫&#8220;狼桃&#8221;的水果。这种水果色泽光亮、鲜艳，形状和苹果十分相似。但人们认为这种水果是一种毒果，没人敢吃，只把它作为观赏植物加以栽培。后来有人冒着生命危险，勇敢地品尝并证实了它的美味。到了16世纪，英国有一位公爵游历到了秘鲁，非常喜欢这种水果，于是，他把它们带回英国皇宫，作为珍贵的礼品献给他心目中的爱人――当时的英国女王伊丽莎白。这种水果，实际上就是西红柿。从那以后，西红柿在异国他乡的土地上得到广泛种植，被人们称为&#8220;爱情的苹果&#8221;。如今，这一短语可喻指&#8220;爱情的信物&#8221;。<br>　　例句：hey, don't touch that bike. it's my apple of love.<br>　　嗨，别动那辆自行车。它可是我的爱情信物。<br><br><span style="COLOR: #0000ff">2 apple of one's eye 掌上明珠，心肝宝贝</span><br>　　人们不仅用apple表示&#8220;苹果&#8221;，还用它来代表&#8220;眼睛的瞳孔&#8221;。眼睛是人体最重要的器官之一，而瞳孔是眼睛最重要的部分，所以用来代表最受珍爱之物。apple of one's eye这一成语出自《圣经》中的一个故事：犹太人先知摩西带领以色列入逃离埃及，历尽千辛万苦，最后终于进入上帝应许的乐土伽南(cannon)时，他说：上帝保护他们，照顾他们，像自己的掌上明珠一般。(he protected them and cared for them，as he would the apple of his eye.)后来人们就用apple of one's eye表示&#8220;掌上明珠，心肝宝贝&#8221;。<br>　　　例句：his daughter is the apple of his eye.女儿是他的掌上明珠。<br><br><span style="COLOR: #0000ff">3 as american as apple pie 典型的美国人的性格</span><br>　　　美国人向来喜欢吃苹果馅饼（apple pie），也就是我们常说的&#8220;苹果派&#8221;。这是一种用烤箱制作的甜点，外面裹着一层面粉，里面包着苹果做的馅儿。美国人喜爱吃苹果派的嗜好始于他们刚从欧洲移居到美洲来的时候。那时每个家庭主妇都经常自己动手做苹果派。为了说明苹果派是美国生活方式的一个特点，人们常说：as american as apple pie。这个习语的意思是：就像苹果派一样具有美国特色。<br>　　例句：japanese sushi and vietnamese spring rolls have become as american as apple pie.<br>　　日本寿司和越南春卷都已经变成像苹果派一样的美国食品了。<br><br><span style="COLOR: #0000ff">4 in apple pie order 有条不紊，井然有序</span><br>　　这个习语的由来尚有争论。在美国，有人认为它产生在新大陆移民时期。那时，家庭主妇要烤苹果派时，需将苹果一片片切成同样的大小，这样烘烤出来的苹果派才会香酥可口。所以这个习语用来形容东西摆放得整整齐齐，井然有序。然而也有人认为apple pie是发文napple pli&#233;e的误传。napple pli&#233;e的意思是&#8220;折叠好的床单&#8221;。以前，不管是达官贵人还是仆人都会将传单折叠得整整齐齐。无论哪一种说法正确，反正in apple pie order用来表示&#8220;整整齐齐&#8221;的意思，已成为公认而且通用的表达法了。<br>　　例句：her room is always in apple pie order. 他的房间总是整整齐齐的。<br><br><span style="COLOR: #0000ff">5 apple polish 讨好，拍马屁，贿赂</span><br>　　美国是个尊师重教的国家，近百年前，美国小学生特别尊敬老师。有些小学生喜欢在老师的桌上放一个擦得鲜亮的苹果，想以此巴结老师。所以，&#8220;擦苹果&#8221;（apple polish）逐渐产生了贬义，表示&#8220;讨好，拍马屁，贿赂&#8221;的意思，用于讽刺那些不顾客观实际，专门谄媚奉承，讨好别人的行为。而&#8220;擦苹果的人&#8221;（apple polisher）就成了&#8220;阿谀逢迎者，马屁精&#8221;。<br>　　例句：john is such an apple-polisher--he always agrees with whatever the boss says.<br>　　约翰是个马屁精，不管老板说什么，他都赞同。<br><br><span style="COLOR: #0000ff">6 apple of discord 祸根；争端</span><br>&#8220;这个典故源自于荷马史诗《伊利亚特》中的神话故事。传说希腊英雄珀琉斯（Peleus）和爱琴海海神的女儿忒提斯（Thetis）举行婚礼，邀请了奥林匹斯山的众神，唯独没有邀请掌握争执的厄里斯（Eris）。这位女神恼羞成怒，决定<br>制造不和。于是就悄悄在宴席上放了一个金苹果，上面写着&#8216;属于最美者&#8217;（for the fairest）。天后赫拉（Hera），智慧女神雅典娜（Athena），爱与美之神阿芙罗狄忒（Aphrodite）都自认为最美，应得到&#8216;最美者&#8217;的称号，因此她们都想获得金苹果。三女神争执不下，找特洛伊王子帕里斯（Paris）评判。为了获得金苹果，三女神各自私许帕里斯好处。年轻的帕里斯在富贵、荣誉和美女之间选择了后者，将金苹果判给爱与美之神。为此，赫拉和雅典娜对帕里斯和特洛伊人怀恨在心。后来阿芙罗狄忒帮助帕里斯拐走了斯巴达国王墨涅拉俄斯（Menelaus）的王后——绝世美女海伦（Helen）。金苹果不仅成了三女神不和的根源，也成为历时十年的特洛伊战争的起因。因而an apple of discord 常用来比喻不和与争斗之源、祸根、争执等意。&#8221;[3](P45)例如：<br><br>The dispute about inheriting estate formed an apple of discord between the children.<br>关于遗产继承的争执是他们兄妹失和之根。 <br>the use of the car was an apple of discord between joe and his wife.<br>该有谁来用这辆车，是乔和妻子争吵的原因。<br><br><span style="COLOR: #0000ff">7 apples and oranges 苹果和桔子</span><br>　　在《圣经》里，人们把所有的果实都叫苹果，亚当和夏娃偷吃的禁果也不例外。这种笼统的叫法，在远古的欧洲大行其道。当时的欧洲人把所有的果实都叫作苹果，其中也包括桔子。后来为了便于区分，人们才叫苹果为苹果，桔子为桔子。于是英语中就出现了apples and oranges这个短语，表示&#8220;不同种类的物与人&#8221;，与汉语的&#8220;风马牛不相及&#8221;有些相似。<br>　　例句：comparing proust and prince is like comparing apples and oranges.<br>　　将普鲁斯特与普林斯两人进行比较，就如同比较苹果和桔子，他们是完全不同的人。<br><br><span style="COLOR: #0000ff">8 adam's apple 喉结</span><br>&#8220;据《旧约&#183;创世纪》记载，上帝创造了人类的始祖亚当（Adam）和夏娃（Eve），让他们无忧无虑地生活在伊甸园（Garden of Eden）。园里长着各种树木，结着各类果实。上帝吩咐他们可以随意享用园中的一切，除了智慧树（Tree of Wisdom）上的果子。然而，夏娃抵不住撒旦（Satan）的诱惑，偷吃了禁果（Forbidden Fruit），又给亚当一个。上帝来了，亚当将苹果整个往下吞，不料却梗在喉中。从此，就永远在脖子前端留下&#8216;喉结&#8217;，作为偷吃禁果的&#8216;罪证&#8217;。因此，男人的喉结就被称为Adam&#8217;s apple。人类的始祖吃了智慧树上的果子就心明眼亮，能辨善恶美丑。但他们违背了上帝的意旨，犯下了&#8220;原罪&#8221;（Original Sin）被逐出伊甸园。可见，最初给人类带来麻烦，使始祖失去美好乐园的就是苹果（apple ）。&#8221;[1](P49 )例如:<br>Adam&#8217;s apple can be more clearly seen on men than women&#8217;s throats. 男人的喉核较女人的明显<br>I&nbsp;find that your adam's apple isn't apparent. 我发现你的喉结不明显。<br><br><span style="COLOR: #0000ff">9、an apple of Sodom/a Dead Sea apple(所多玛苹果／死海苹果，金玉其外，败絮其中)</span><br>&#8220;据圣经《旧约&#183;创世纪》记载,所多玛(Sodom)是古代死海(Dead Sea)边上的一座城市，由于那里的居民骄奢淫逸、罪大恶极，上帝降火烧毁了这座城，城中百姓、庄稼和牲畜全部化为灰烬。传说在那里的死海边上长着一种外表美丽，摘下便成为灰烬的苹果。后来，an apple of Sodom 或a dead sea apple 就被用来形容那些外表华丽而无实用价值的东西。与汉语中的&#8216;金玉其外，败絮其中&#8217;意义相仿。Sodom喻罪恶的城市，罪恶之地。&#8221;[2](P34)例如：<br>1）、She had seen the fruit of victory turn into an apple of Sodom. <br><br><span style="COLOR: #0000ff">10、 from the egg to the apple（自始至终）</span><br>西方人的早餐一般是鸡蛋、牛奶和面包，而晚餐通常的最后一道菜是包括苹果在内的甜点，所以这种部分代整体的联想方式from the egg to the apple表示自始至终。例如：<br>I honored him, I trusted him, and I loved him from the egg to the apple.<br>我敬重他，相信他，自始至终爱他。</p>
<br><span style="COLOR: #0000ff">11.the Big Apple（纽约市）</span><br>apple作为水果名，还可指大城镇，热闹或可以找到刺激性娱乐的街区，于是纽约市又被称为the Big Apple或the Apple。这种用法源自于美国20世纪初流行于爵士乐手中的一句唱词：&#8220;树上有这么多苹果，但当你选中了纽约市，你就选中了最大的苹果。&#8221;这样，&#8220;大苹果&#8221;的说法便在娱乐界流传开来。后来，美国报刊在宣传纽约市的时候，也每每把它描述成一个富于机会的城市，犹如一只熟透的大苹果一样伸手可及。于是，Big Apple作为纽约市的别称就这样确立下来了。例如：<br>Many young people are flocking into the Apple.<br>许多年轻人正涌向纽约。<br><br><br>
<img src ="http://www.cppblog.com/wifecooky/aggbug/118305.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wifecooky/" target="_blank">楚天清秋</a> 2010-06-20 13:56 <a href="http://www.cppblog.com/wifecooky/archive/2010/06/20/118305.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于多国语言系统制作的注意事项</title><link>http://www.cppblog.com/wifecooky/archive/2010/06/20/118302.html</link><dc:creator>楚天清秋</dc:creator><author>楚天清秋</author><pubDate>Sun, 20 Jun 2010 05:12:00 GMT</pubDate><guid>http://www.cppblog.com/wifecooky/archive/2010/06/20/118302.html</guid><wfw:comment>http://www.cppblog.com/wifecooky/comments/118302.html</wfw:comment><comments>http://www.cppblog.com/wifecooky/archive/2010/06/20/118302.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/wifecooky/comments/commentRss/118302.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/wifecooky/services/trackbacks/118302.html</trackback:ping><description><![CDATA[<p>什么和国际接轨的废话就不多说了。<br>以下是制作多国语言系统时碰到的一些需要注意的Point。<br><br>参考IDE：BCB6.0<br>环境：日文系统，中文系统下设计界面<br>现象：在中文系统，日文系统下设计的1024*768的界面，在英文OS下显示溢出（只能显示界面一部分）。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; （当然前提是英文OS的屏幕分辨率也为1024*768，不然不溢出或变形才怪！）<br>结论：情况1：如果在设计时把Form的Font-&gt;Charset属性设置成SHIFTJIS_CHARSET，Name设置成ＭＳ Ｐゴシック<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 之类的汉字字体，在中文，日文OS下显示也许正常，在英文OS下就会溢出屏幕。大概会扩大1.3倍<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 左右。所以如果想在英文OS下显示正常，需要把字体设置成ANSI_CHARSET-Arial<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (or ANSI_CHARSET-Times New Roman)。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 情况2：如果已经把字体设置为ANSI_CHARSET-Arial了，还是显示溢出，或者出现了滚动条。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这种情况一般是由于系统的显示风格（桌面-&gt;右键-&gt;Property-&gt;Themes-&gt;Themes下拉框）不同的原因。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Windows自己也有风格可以选择，现在大部分熟悉的是较为美观的XP风格（Windows XP风格），<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 其实之前一直是使用Windows Classic风格的，不然就不用给他取名为经典风格了，^_^<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 简单的说，Windows XP风格是Windows Classic风格的美化版。美化后的Windows XP风格，典型的变化<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 就是窗口的各个部件（标题栏之类）的大小发生了变化。Windows XP风格的窗口标题栏比<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Windows Classic风格的窗口标题栏的Height稍微变大了。这就是导致显示溢出或者出现滚动条的原因。<br><br></p>
<img src ="http://www.cppblog.com/wifecooky/aggbug/118302.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/wifecooky/" target="_blank">楚天清秋</a> 2010-06-20 13:12 <a href="http://www.cppblog.com/wifecooky/archive/2010/06/20/118302.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>