﻿<?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++博客-shifan3</title><link>http://www.cppblog.com/shifan3/</link><description>Everything is template...</description><language>zh-cn</language><lastBuildDate>Thu, 09 Apr 2026 05:38:21 GMT</lastBuildDate><pubDate>Thu, 09 Apr 2026 05:38:21 GMT</pubDate><ttl>60</ttl><item><title>拆迁！</title><link>http://www.cppblog.com/shifan3/archive/2008/01/22/41671.html</link><dc:creator>shifan3</dc:creator><author>shifan3</author><pubDate>Tue, 22 Jan 2008 12:54:00 GMT</pubDate><guid>http://www.cppblog.com/shifan3/archive/2008/01/22/41671.html</guid><wfw:comment>http://www.cppblog.com/shifan3/comments/41671.html</wfw:comment><comments>http://www.cppblog.com/shifan3/archive/2008/01/22/41671.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/shifan3/comments/commentRss/41671.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/shifan3/services/trackbacks/41671.html</trackback:ping><description><![CDATA[此处废弃，新家<a href="http://hi.baidu.com/shifan3">http://hi.baidu.com/shifan3</a><br><br>为什么要搬迁？<br>我打开这个编辑页面花了3个月
<img src ="http://www.cppblog.com/shifan3/aggbug/41671.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shifan3/" target="_blank">shifan3</a> 2008-01-22 20:54 <a href="http://www.cppblog.com/shifan3/archive/2008/01/22/41671.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>庆祝项目突破性进展</title><link>http://www.cppblog.com/shifan3/archive/2007/11/29/37500.html</link><dc:creator>shifan3</dc:creator><author>shifan3</author><pubDate>Thu, 29 Nov 2007 08:45:00 GMT</pubDate><guid>http://www.cppblog.com/shifan3/archive/2007/11/29/37500.html</guid><wfw:comment>http://www.cppblog.com/shifan3/comments/37500.html</wfw:comment><comments>http://www.cppblog.com/shifan3/archive/2007/11/29/37500.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.cppblog.com/shifan3/comments/commentRss/37500.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/shifan3/services/trackbacks/37500.html</trackback:ping><description><![CDATA[事实证明，调试黑箱+内核的程序<br>RP是关键 
<img src ="http://www.cppblog.com/shifan3/aggbug/37500.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shifan3/" target="_blank">shifan3</a> 2007-11-29 16:45 <a href="http://www.cppblog.com/shifan3/archive/2007/11/29/37500.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>寒！</title><link>http://www.cppblog.com/shifan3/archive/2007/11/26/37339.html</link><dc:creator>shifan3</dc:creator><author>shifan3</author><pubDate>Mon, 26 Nov 2007 12:53:00 GMT</pubDate><guid>http://www.cppblog.com/shifan3/archive/2007/11/26/37339.html</guid><wfw:comment>http://www.cppblog.com/shifan3/comments/37339.html</wfw:comment><comments>http://www.cppblog.com/shifan3/archive/2007/11/26/37339.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/shifan3/comments/commentRss/37339.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/shifan3/services/trackbacks/37339.html</trackback:ping><description><![CDATA[有恒性(G)：<br>【结果解释】从测试来看，被试做事苟且敷衍，缺乏奉公守法的精神，缺乏远大的目标和崇高的理想，对人类社会没有绝对的责任感，甚至有时不惜知法犯法，不择手段，不过对于解决实际问题比较有效，不会浪费过多时间与精力。<br>【适合职业】艺术家、社会工作者、社会科学家、竞技运动员、作家、记者。
<img src ="http://www.cppblog.com/shifan3/aggbug/37339.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shifan3/" target="_blank">shifan3</a> 2007-11-26 20:53 <a href="http://www.cppblog.com/shifan3/archive/2007/11/26/37339.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>神意不是凡人能领会的（2） </title><link>http://www.cppblog.com/shifan3/archive/2007/11/02/35768.html</link><dc:creator>shifan3</dc:creator><author>shifan3</author><pubDate>Fri, 02 Nov 2007 10:08:00 GMT</pubDate><guid>http://www.cppblog.com/shifan3/archive/2007/11/02/35768.html</guid><wfw:comment>http://www.cppblog.com/shifan3/comments/35768.html</wfw:comment><comments>http://www.cppblog.com/shifan3/archive/2007/11/02/35768.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/shifan3/comments/commentRss/35768.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/shifan3/services/trackbacks/35768.html</trackback:ping><description><![CDATA[转载自神的blog<br>http://blog.csdn.net/vbvan/archive/2007/10/30/1856481.aspx<br><br><span style="FONT-SIZE: 24pt">搞挂你的C++编译器</span>&nbsp;<br><br>Play&nbsp; with the compiler是一件很有趣的事情，编译死循环的程序便是其中之一。让我们和编译器一起做游戏吧~<br><br>1、Preprocess<br><br>a、Self Include（GCC only）<br>一般的编译器都有include嵌套层数的限制，所以你需要在适当的时候停止嵌套。利用GCC提供的__INCLUDE_LEVEL__可以很轻松的实现这一点。时间复杂度是n<sup>a</sup>，n是每层的Self Include次数，a是嵌套层数。<br>在其它编译器中可以写出类似的代码，只是没这么简洁<br>
<p class=MsoNormal><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#if</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">__INCLUDE_LEVEL__</span>&lt;199<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#include</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">__FILE__<o:p></o:p></span></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#include</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">__FILE__<o:p></o:p></span></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#endif</span></p>
b、Macro Expansion Explosion<br>顾名思义，就是让Preprocess之后的代码量达到O(2<sup>n</sup>)，比如下例：<br>
<p class=MsoNormal><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">F1</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">x</span>,<span style="COLOR: rgb(1,0,1)">x<o:p></o:p></span></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">F2</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">F1</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">F1</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">F3</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">F2</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">F2</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">F4</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">F3</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">F3</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">F5</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">F4</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">F4</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">F6</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">F5</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">F5</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">F7</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">F6</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">F6</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">F8</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">F7</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">F7</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">F9</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">F8</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">F8</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">G1</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">F9</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">F9</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">G2</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">G1</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">G1</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">G3</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">G2</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">G2</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">G4</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">G3</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">G3</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">G5</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">G4</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">G4</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">G6</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">G5</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">G5</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">G7</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">G6</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">G6</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">G8</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">G7</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">G7</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">G9</span>(<span style="COLOR: rgb(1,0,1)">x</span>) <span style="COLOR: rgb(1,0,1)">G8</span>(<span style="COLOR: rgb(1,0,1)">x</span>),<span style="COLOR: rgb(1,0,1)">G8</span>(<span style="COLOR: rgb(1,0,1)">x</span>)<o:p></o:p><br></span><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体"></span></p>
<p class=MsoNormal><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">int</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">main</span>()<o:p></o:p><br>{<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: rgb(1,0,1)">G9</span>(1);<o:p></o:p><br>}</span></p>
当然，不同的编译器对预处理结果溢出的处理也不尽相同，一般上面的代码不会达到预期的目的。GCC会直接出错，而VC会出ICE（Internal Compiler Error）<br><br>2、Template<br><br>a、嵌套<br>类似的，模版也有嵌套层数限制，但是也很容易绕过。<br>GCC的某些版本就会被下面的代码搞挂（VC不会）：<br>
<p class=MsoNormal><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#include</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(163,21,21)">&lt;cstddef&gt;<o:p></o:p></span></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">template</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> &lt;<span style="COLOR: blue">class</span> <span style="COLOR: rgb(1,0,1)">T</span>&gt;<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">struct</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">Test</span> {<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: blue">static</span> <span style="COLOR: blue">const</span> <span style="COLOR: rgb(1,0,1)">size_t</span> <span style="COLOR: rgb(1,0,1)">Value</span>=<span style="COLOR: rgb(1,0,1)">Test</span>&lt;<span style="COLOR: rgb(1,0,1)">Test</span>&lt;<span style="COLOR: rgb(1,0,1)">T</span>&gt; &gt;::<span style="COLOR: rgb(1,0,1)">Value</span>;<o:p></o:p><br>};</span></p>
不过利用VC的某个bug（或者说特性），可以很容易的写出O(n<sup>a</sup>)编译时间的模版：<br><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#include</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(163,21,21)">&lt;cstddef&gt;<o:p></o:p></span></span>
<p class=MsoNormal style="TEXT-ALIGN: left" align=left></p>
<p class=MsoNormal style="TEXT-ALIGN: left" align=left><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">INNER</span>(<span style="COLOR: rgb(1,0,1)">A3</span>,<span style="COLOR: rgb(1,0,1)">N3</span>,<span style="COLOR: rgb(1,0,1)">A2</span>,<span style="COLOR: rgb(1,0,1)">N2</span>) \<o:p></o:p><br><span style="COLOR: blue">template</span>&lt;<span style="COLOR: rgb(1,0,1)">size_t</span> <span style="COLOR: rgb(1,0,1)">N3</span>&gt;\<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">struct</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">A3</span>\<o:p></o:p><br>{\<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: blue">enum</span> {<span style="COLOR: rgb(1,0,1)">N</span>=<span style="COLOR: rgb(1,0,1)">A3</span>&lt;<span style="COLOR: rgb(1,0,1)">N3</span>-1&gt;::<span style="COLOR: rgb(1,0,1)">N</span>+1};\<o:p></o:p><br>};\<o:p></o:p><br><span style="COLOR: blue">template</span>&lt;&gt;\<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">struct</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">A3</span>&lt;0&gt;\<o:p></o:p><br>{\<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: blue">enum</span> {<span style="COLOR: rgb(1,0,1)">N</span>=<span style="COLOR: rgb(1,0,1)">A2</span>&lt;<span style="COLOR: rgb(1,0,1)">N2</span>-1&gt;::<span style="COLOR: rgb(1,0,1)">N</span>};\<o:p></o:p><br>};<o:p></o:p></span></p>
<p class=MsoNormal style="TEXT-ALIGN: left" align=left><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">OUTER</span>(<span style="COLOR: rgb(1,0,1)">A2</span>,<span style="COLOR: rgb(1,0,1)">N2</span>,<span style="COLOR: rgb(1,0,1)">A1</span>,<span style="COLOR: rgb(1,0,1)">N1</span>,<span style="COLOR: rgb(1,0,1)">A3</span>,<span style="COLOR: rgb(1,0,1)">CONTENT</span>) \<o:p></o:p><br><span style="COLOR: blue">template</span>&lt;<span style="COLOR: rgb(1,0,1)">size_t</span> <span style="COLOR: rgb(1,0,1)">N2</span>&gt;\<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">struct</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">A2</span>\<o:p></o:p><br>{\<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: rgb(1,0,1)">CONTENT</span>\<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span>\<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: blue">enum</span> {<span style="COLOR: rgb(1,0,1)">N</span>=<span style="COLOR: rgb(1,0,1)">A3</span>&lt;<span style="COLOR: rgb(1,0,1)">N2</span>&gt;::<span style="COLOR: rgb(1,0,1)">N</span>};\<o:p></o:p><br>};\<o:p></o:p><br><span style="COLOR: blue">template</span>&lt;&gt;\<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">struct</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">A2</span>&lt;0&gt;\<o:p></o:p><br>{\<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: blue">enum</span> {<span style="COLOR: rgb(1,0,1)">N</span>=<span style="COLOR: rgb(1,0,1)">A1</span>&lt;<span style="COLOR: rgb(1,0,1)">N1</span>-1&gt;::<span style="COLOR: rgb(1,0,1)">N</span>};\<o:p></o:p><br>};</span></p>
<p class=MsoNormal style="TEXT-ALIGN: left" align=left><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">LEVEL2</span>(<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">c</span>) <span style="COLOR: rgb(1,0,1)">INNER</span>(<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">N</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">N</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">a</span>)<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">LEVEL3</span>(<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">c</span>) <span style="COLOR: rgb(1,0,1)">OUTER</span>(<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">N</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">N</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">c</span>,<span style="COLOR: rgb(1,0,1)">LEVEL2</span>(<span style="COLOR: rgb(1,0,1)">a</span><span style="COLOR: blue">#</span>#1,<span style="COLOR: rgb(1,0,1)">b</span><span style="COLOR: blue">#</span>#1,<span style="COLOR: rgb(1,0,1)">c</span><span style="COLOR: blue">#</span>#1))<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">LEVEL4</span>(<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">c</span>) <span style="COLOR: rgb(1,0,1)">OUTER</span>(<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">N</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">N</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">c</span>,<span style="COLOR: rgb(1,0,1)">LEVEL3</span>(<span style="COLOR: rgb(1,0,1)">a</span><span style="COLOR: blue">#</span>#1,<span style="COLOR: rgb(1,0,1)">b</span><span style="COLOR: blue">#</span>#1,<span style="COLOR: rgb(1,0,1)">c</span><span style="COLOR: blue">#</span>#1))<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">LEVEL5</span>(<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">c</span>) <span style="COLOR: rgb(1,0,1)">OUTER</span>(<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">N</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">b</span>,<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">N</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">a</span>,<span style="COLOR: rgb(1,0,1)">A</span><span style="COLOR: blue">#</span>#<span style="COLOR: rgb(1,0,1)">c</span>,<span style="COLOR: rgb(1,0,1)">LEVEL4</span>(<span style="COLOR: rgb(1,0,1)">a</span><span style="COLOR: blue">#</span>#1,<span style="COLOR: rgb(1,0,1)">b</span><span style="COLOR: blue">#</span>#1,<span style="COLOR: rgb(1,0,1)">c</span><span style="COLOR: blue">#</span>#1))<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体">&nbsp;</span><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">template</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体">&lt;<span style="COLOR: rgb(1,0,1)">size_t</span> <span style="COLOR: rgb(1,0,1)">N1</span>&gt;<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">struct</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">A1<o:p></o:p></span><br>{<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: rgb(1,0,1)">LEVEL5</span>(1,11,111)<o:p></o:p><span><br>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: blue">enum</span> {<span style="COLOR: rgb(1,0,1)">N</span>=<span style="COLOR: rgb(1,0,1)">A11</span>&lt;<span style="COLOR: rgb(1,0,1)">N1</span>&gt;::<span style="COLOR: rgb(1,0,1)">N</span>};<o:p></o:p><br>};<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">template</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体">&lt;&gt;<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">struct</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">A1</span>&lt;0&gt;<o:p></o:p><br>{<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: blue">enum</span> {<span style="COLOR: rgb(1,0,1)">N</span>=0};<o:p></o:p><br>};</span></p>
这里比较有趣的一点是，标准并不允许这样在模版类里的特化。不知道这个算VC的bug呢还是扩展呢 <img alt="" src="http://blog.csdn.net/Editor/FCKeditor/editor/images/smiley/msn/tounge_smile.gif"><br><span style="FONT-WEIGHT: bold">A member or a member template may be nested within many enclosing class templates. In an explicit specialization for such a member, the member declaration shall be preceded by a template&lt;&gt; for each enclosing class template that is explicitly specialized</span><br>基于类似的思想，GCC&amp;VC通用的版本也不难写出。<br><br>b、OLE<br>虽然通常模版的编译时间都是O(n)的，不过很多编译器的错误信息输出却是O(n<sup>2</sup>)的，利用这一点+很长的类名，很容易造成错误信息的Output Limit Exceed。比如：<br>
<p class=MsoNormal style="TEXT-ALIGN: left" align=left><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">#define</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">ClassName</span> <span style="COLOR: rgb(1,0,1)">A<o:p></o:p></span></span><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: rgb(1,0,1); FONT-FAMILY: 新宋体">&nbsp;<br></span><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">template</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> &lt;<span style="COLOR: blue">int</span> <span style="COLOR: rgb(1,0,1)">N</span>&gt;<o:p></o:p></span><br><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">class</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">ClassName<o:p></o:p></span><br>{<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: blue">enum</span> {<span style="COLOR: rgb(1,0,1)">Value</span>=<span style="COLOR: rgb(1,0,1)">ClassName</span>&lt;<span style="COLOR: rgb(1,0,1)">N</span>-1&gt;::<span style="COLOR: rgb(1,0,1)">Value</span>};<o:p></o:p><br>};<o:p></o:p><br></span><span lang=EN-US style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 新宋体">int</span><span lang=EN-US style="FONT-SIZE: 9pt; FONT-FAMILY: 新宋体"> <span style="COLOR: rgb(1,0,1)">main</span>()<o:p></o:p><br>{<o:p></o:p><br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: blue">int</span> <span style="COLOR: rgb(1,0,1)">n</span>=<span style="COLOR: rgb(1,0,1)">ClassName</span>&lt;0&gt;::<span style="COLOR: rgb(1,0,1)">Value</span>;<o:p></o:p><br>}</span></p>
如果我把ClassName改成某个很长的名称（现代的编译器都支持很长的变量名），那么错误输出就很容易OLE<br>PS：上面的代码在VC8里会直接出ICE，不过这是VC8的bug。VC2008没有这样的问题<br>
<img src ="http://www.cppblog.com/shifan3/aggbug/35768.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shifan3/" target="_blank">shifan3</a> 2007-11-02 18:08 <a href="http://www.cppblog.com/shifan3/archive/2007/11/02/35768.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>神意不是凡人能领会的（1）</title><link>http://www.cppblog.com/shifan3/archive/2007/11/02/35767.html</link><dc:creator>shifan3</dc:creator><author>shifan3</author><pubDate>Fri, 02 Nov 2007 10:05:00 GMT</pubDate><guid>http://www.cppblog.com/shifan3/archive/2007/11/02/35767.html</guid><wfw:comment>http://www.cppblog.com/shifan3/comments/35767.html</wfw:comment><comments>http://www.cppblog.com/shifan3/archive/2007/11/02/35767.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/shifan3/comments/commentRss/35767.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/shifan3/services/trackbacks/35767.html</trackback:ping><description><![CDATA[转载自神的blog<br><a href="http://blog.csdn.net/vbvan/archive/2007/10/30/1857134.aspx">http://blog.csdn.net/vbvan/archive/2007/10/30/1857134.aspx</a><br><br><span style="FONT-SIZE: 24pt"><font color=#000080>Flexible C++</font><br></span><br>C++是一门非常灵活的语言，只要充分发挥你的想象， 再普通的东西都能玩出新花样<br><br>1、1~1000求和<br>循环？递归？再简单不过的题目了。但是如果不允许你用判断语句呢？<br>如果你熟悉switch的内部实现，那么你很容易想到使用函数指针数组。<br>
<p align=left><span>#include</span><span> <span>&lt;cstdio&gt;</span></span></p>
<p><span>typedef</span><span> <span>int</span> (*<span>fun</span>)(<span>int</span>);<br></span><span>int</span><span> <span>f1</span>(<span>int</span> <span>i</span>) {<span>return</span> 0;}</span><br><span>int</span><span> <span>f2</span>(<span>int</span> <span>i</span>) {<span>fun</span> <span>f</span>[2]={<span>f1</span>,<span>f2</span>}; <span>return</span> <span>i</span>+<span>f</span>[!!<span>i</span>](<span>i</span>-1);}</span><br><span>int</span><span> <span>main</span>()<br>{<br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span>printf</span>(<span>"%d\n"</span>,<span>f2</span>(1000));<br>}</span></p>
2、输出1,2,...,100,99,...,2,1<br>如果同样不让你用判断语句呢？你仍然可以使用函数指针数组：<br>
<p align=left><span>#include</span><span> <span>&lt;cstdio&gt;</span></span></p>
<p align=left><span>typedef</span><span> <span>void</span> (*<span>fun</span>)(<span>int</span> <span>i</span>,<span>int</span> <span>n</span>);&nbsp;<br></span><span>void</span><span> <span>f1</span>(<span>int</span> <span>i</span>,<span>int</span> <span>n</span>);</span><br><span>void</span><span> <span>f2</span>(<span>int</span> <span>i</span>,<span>int</span> <span>n</span>);</span><br><span>void</span><span> <span>f3</span>(<span>int</span> <span>i</span>,<span>int</span> <span>n</span>);</span></p>
<p align=left><span>void</span><span> <span>f1</span>(<span>int</span> <span>i</span>,<span>int</span> <span>n</span>)<br>{<br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span>fun</span> <span>f</span>[2]={<span>f1</span>,<span>f2</span>};</span></p>
<p align=left><span><span>&nbsp; &nbsp;&nbsp; </span><span>printf</span>(<span>"%d\n"</span>,<span>i</span>);<br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span>f</span>[<span>i</span>+1==<span>n</span>](<span>i</span>+1,<span>n</span>);<br>}</span><br><span>void</span><span> <span>f2</span>(<span>int</span> <span>i</span>,<span>int</span> <span>n</span>)<br>{<br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span>fun</span> <span>f</span>[2]={<span>f2</span>,<span>f3</span>};<br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span>printf</span>(<span>"%d\n"</span>,<span>i</span>);<br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span>f</span>[<span>i</span>==1](<span>i</span>-1,<span>n</span>);<br>}</span><br><span>void</span><span> <span>f3</span>(<span>int</span> <span>i</span>,<span>int</span> <span>n</span>) {}</span></p>
<p><span>int</span><span> <span>main</span>()<br>{<br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span>f1</span>(1,100);<br>}</span></p>
不过我们有更简洁的方法。<br>短路算法和逗号表达式粉墨登场了，一行搞定~<br>
<p align=left><span>#include</span><span> <span>&lt;cstdio&gt;</span></span></p>
<p align=left><span>void</span><span> <span>f</span>(<span>int</span> <span>i</span>,<span>int</span> <span>n</span>)<br>{<br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span>printf</span>(<span>"%d\n"</span>,<span>i</span>),(<span>i</span>&lt;<span>n</span>)&amp;&amp;(<span>f</span>(<span>i</span>+1,<span>n</span>),<span>printf</span>(<span>"%d\n"</span>,<span>i</span>));<br>}</span></p>
<p><span>int</span><span> <span>main</span>()<br>{<br><span>&nbsp;&nbsp;&nbsp;&nbsp; </span><span>f</span>(1,100);<br>}</span></p>
<img src ="http://www.cppblog.com/shifan3/aggbug/35767.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shifan3/" target="_blank">shifan3</a> 2007-11-02 18:05 <a href="http://www.cppblog.com/shifan3/archive/2007/11/02/35767.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>好湿</title><link>http://www.cppblog.com/shifan3/archive/2007/10/30/35486.html</link><dc:creator>shifan3</dc:creator><author>shifan3</author><pubDate>Mon, 29 Oct 2007 16:53:00 GMT</pubDate><guid>http://www.cppblog.com/shifan3/archive/2007/10/30/35486.html</guid><wfw:comment>http://www.cppblog.com/shifan3/comments/35486.html</wfw:comment><comments>http://www.cppblog.com/shifan3/archive/2007/10/30/35486.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/shifan3/comments/commentRss/35486.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/shifan3/services/trackbacks/35486.html</trackback:ping><description><![CDATA[<p>江城子</p>
<p>黄叶满地秋已凉，豪气减，怨气长?<br>长子有感，我为毕业狂。<br>狂风逐叶又经年，白日短，愁日长?<br>长泪沾襟形容惭，顺者昌，逆者亡?<br>亡命玉泉，敢嗜血豺狼。<br>狼子野心不曾想：毕业难，就业黄?<br></p>
by boylaugh
<img src ="http://www.cppblog.com/shifan3/aggbug/35486.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shifan3/" target="_blank">shifan3</a> 2007-10-30 00:53 <a href="http://www.cppblog.com/shifan3/archive/2007/10/30/35486.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>看样子今生养不了小正太了</title><link>http://www.cppblog.com/shifan3/archive/2007/08/27/30976.html</link><dc:creator>shifan3</dc:creator><author>shifan3</author><pubDate>Mon, 27 Aug 2007 14:22:00 GMT</pubDate><guid>http://www.cppblog.com/shifan3/archive/2007/08/27/30976.html</guid><wfw:comment>http://www.cppblog.com/shifan3/comments/30976.html</wfw:comment><comments>http://www.cppblog.com/shifan3/archive/2007/08/27/30976.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/shifan3/comments/commentRss/30976.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/shifan3/services/trackbacks/30976.html</trackback:ping><description><![CDATA[<p>发信人: xiaoheng (我的一班我的爱), 板面: C++<br>标&nbsp; 题: Re: 父类的方法能否使用子类的特有属性<br>发信站: 飘渺水云间 (Mon Aug 27 22:12:27 2007), 站内信件</p>
<p>我在公司只听说生女儿的，没有听说生儿子的。中国、印度、美国都一样。</p>
<p>【 在 shifan (Au revoir, mes amis) 的大作中提到: 】<br>: 应该说，老爸在没XX的时候，也无法决定后代是男是女<br>: 【 在 morningcs (BG5HLI&#183;"鎏"金岁月&#183;CS0306 Forever) 的大作中提到: 】<br>: : 你老爸在你小的时候也不知道你以后有啥特长<br></p>
<img src ="http://www.cppblog.com/shifan3/aggbug/30976.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shifan3/" target="_blank">shifan3</a> 2007-08-27 22:22 <a href="http://www.cppblog.com/shifan3/archive/2007/08/27/30976.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>夫天将降大任于斯人也</title><link>http://www.cppblog.com/shifan3/archive/2007/08/26/30891.html</link><dc:creator>shifan3</dc:creator><author>shifan3</author><pubDate>Sun, 26 Aug 2007 13:38:00 GMT</pubDate><guid>http://www.cppblog.com/shifan3/archive/2007/08/26/30891.html</guid><wfw:comment>http://www.cppblog.com/shifan3/comments/30891.html</wfw:comment><comments>http://www.cppblog.com/shifan3/archive/2007/08/26/30891.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/shifan3/comments/commentRss/30891.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/shifan3/services/trackbacks/30891.html</trackback:ping><description><![CDATA[必先劳其筋骨<br><br>原来被开水烫是这个感觉。。。
<img src ="http://www.cppblog.com/shifan3/aggbug/30891.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shifan3/" target="_blank">shifan3</a> 2007-08-26 21:38 <a href="http://www.cppblog.com/shifan3/archive/2007/08/26/30891.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>资料：菜谱 家传回锅肉</title><link>http://www.cppblog.com/shifan3/archive/2007/08/02/29228.html</link><dc:creator>shifan3</dc:creator><author>shifan3</author><pubDate>Thu, 02 Aug 2007 13:00:00 GMT</pubDate><guid>http://www.cppblog.com/shifan3/archive/2007/08/02/29228.html</guid><wfw:comment>http://www.cppblog.com/shifan3/comments/29228.html</wfw:comment><comments>http://www.cppblog.com/shifan3/archive/2007/08/02/29228.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.cppblog.com/shifan3/comments/commentRss/29228.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/shifan3/services/trackbacks/29228.html</trackback:ping><description><![CDATA[材料 五花肉（或其他半肥瘦肉，网上众说纷纭-,-） 蒜苗<br><br>1。用水煮肉至肉熟皮软，捞出冷却切片<br>2。切蒜苗（菱形片）<br>3。豆丝（少许）、豆瓣（一勺或2勺）、甜酱（约一勺），盐(适量)，混合后用油炒出香味<br>4。放入肉片，炒至发卷<br>5。放入蒜苗，炒熟后适量放味精等调料 <br><img height=768 alt="" src="http://files1.szhome.com/UploadFiles/BBS/2005/01/15/7590660_82088.91.jpg" width=1024 border=0><br><br>ref <a href="http://news.xinhuanet.com/food/2004-09/14/content_1979737.htm">http://news.xinhuanet.com/food/2004-09/14/content_1979737.htm</a>
<img src ="http://www.cppblog.com/shifan3/aggbug/29228.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shifan3/" target="_blank">shifan3</a> 2007-08-02 21:00 <a href="http://www.cppblog.com/shifan3/archive/2007/08/02/29228.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>吃完火锅，气温20度，躺在床上上网</title><link>http://www.cppblog.com/shifan3/archive/2007/07/31/29097.html</link><dc:creator>shifan3</dc:creator><author>shifan3</author><pubDate>Tue, 31 Jul 2007 13:23:00 GMT</pubDate><guid>http://www.cppblog.com/shifan3/archive/2007/07/31/29097.html</guid><wfw:comment>http://www.cppblog.com/shifan3/comments/29097.html</wfw:comment><comments>http://www.cppblog.com/shifan3/archive/2007/07/31/29097.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.cppblog.com/shifan3/comments/commentRss/29097.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/shifan3/services/trackbacks/29097.html</trackback:ping><description><![CDATA[本贴为炫耀贴 
<img src ="http://www.cppblog.com/shifan3/aggbug/29097.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/shifan3/" target="_blank">shifan3</a> 2007-07-31 21:23 <a href="http://www.cppblog.com/shifan3/archive/2007/07/31/29097.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>