﻿<?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++博客-qiezi的学习园地-随笔分类-杂谈</title><link>http://www.cppblog.com/cpunion/category/50.html</link><description>AS/C/C++/D/Java/JS/Python/Ruby</description><language>zh-cn</language><lastBuildDate>Mon, 19 May 2008 23:03:47 GMT</lastBuildDate><pubDate>Mon, 19 May 2008 23:03:47 GMT</pubDate><ttl>60</ttl><item><title>[Linux] linux使用流水帐</title><link>http://www.cppblog.com/cpunion/archive/2006/09/22/12843.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Fri, 22 Sep 2006 12:45:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/09/22/12843.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/12843.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/09/22/12843.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/12843.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/12843.html</trackback:ping><description><![CDATA[6年前安装过linux，当时只是好玩而已，当时的linux对我来说可玩性太低，差不多都是装了耍几天酷就卸掉了。<br /><br />2年前被迫使用linux作开发平台，使用的是fedora core 2，感觉一般。后来去掉图形界面运行服务器程序，开发主要还是在windows上，有需要时putty连上去操作。<br /><br />其后1年多，安装过suse, ubuntu，还有许多记不得名字的发行版，感觉并不好，ubuntu的界面主题给我印象比较深。<br /><br />半年前正式开始在同事的鼓吹下试用gentoo，才发现这个安装最麻烦的发行版使用起来却是最舒服的，特别是对于开发者来说。你能想到的语言、库，基本上都可以直接在里面emerge到，而且总能保持最新版本，特别适合开发人员。<br /><br />不过对于gentoo系统不熟悉，也走了不少弯路。网上的linux资料相当多，当然有很大一部分也是相当老，往往你照着某资料配置半天，才发现它已经过时了。最头疼的是界面美化，我想要的是一个至少看得过去的界面，不影响网页浏览。看着网上大堆的教程，不胜其烦，一直没搞懂。其间在ubuntu、suse和gentoo之间摇摆了几次，后来因为suse占用资源太多，被我抛弃。<br /><br />这时候已经对windows有点烦，又在rails的带动下安装了mac osx，同时还安装了ubuntu和gentoo。mac osx下除了textmate这个编辑器还有点吸引力以外，其它部分就没多少吸引我的了，命令行让我烦恼不已。在linux下可以rm aa -rf或rm -rf aa来删除一个文件，在mac osx下必须使用后一种形式，自由惯了突然受到约束，感觉真是不爽。<br /><br />保留ubuntu主要是因为它可以完美支持我的笔记本上所有硬件，声音控制面板也支持，不过对于开发人员来说，安装点开发包还真是麻烦，升级也比较慢。其实后来才发现gentoo对硬件支持一点也不差，只是不会使用而已。<br /><br />最近gentoo 2006.1发布，安装以后就一直在使用它，除了界面粗体字和无线网络没解决以外，倒也没什么问题。前几天突然开窍，搞懂了所有软件安装前都看看USE标志需求，把整个系统升级了一下，重新编译内核再安装无线驱动，一切都很顺利，界面粗体字竟然自己出来了，只是浏览器里面没有粗体。网上找了一下，原来因为我安装的是bin版本，中文支持都没有，于是设置LINGUAS，emerge安装源码版本，终于搞定。就这个小问题让我折腾了半年，真是惭愧。接下来同样设置USE搞定vlc图形界面、SCIM，realplayer也没有以前那个段错误，pgadmin也好了，还发现ubuntu里面的realplayer放不出来的一些电影可以在这里面放出来，vlc+realplayer基本上可以搞定所有视频格式了。感觉一切都美好起来，终于明白gentoo里面USE是最重要的，以前把它当成个可选项了，安装软件以前最好emerge -av一下看看有哪些USE需求。要早明白这个，也不用安装得这么辛苦了。<br /><br />接着在邮件列表中一些朋友的帮助下，安装了gnome-volumn-manager，放入光盘就能自动mount，按退出键也能自动umount并弹出，和windows下一样方便了，连移动硬盘和ipod也能很好支持。唯一遗憾是图形化的无线网络配置工具还没有安装上，虽然通过脚本也可以配置，但毕竟不是那么方便。开源社区最近几年在易用性上下足了工夫，gentoo也有庞大的开发社区，想必解决这个也不用多久了。<br /><br />用过很多发行版，gentoo是我用得最辛苦的一个，却也是用得最顺心的一个。<br /><br />贴点桌面抓图：<br /><br /><img src="http://www.cppblog.com/images/cppblog_com/cpunion/63/o_Screenshot.png" /><br /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/cpunion/63/o_Screenshot-1.png" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/cpunion/63/o_Screenshot-2.png" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/cpunion/63/o_Screenshot-3.png" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/cpunion/63/o_Screenshot-4.png" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/cpunion/63/o_Screenshot-5.png" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/cpunion/63/o_Screenshot-6.png" /><br /><br /><img src="http://www.cppblog.com/images/cppblog_com/cpunion/63/o_Screenshot-7.png" /><img src ="http://www.cppblog.com/cpunion/aggbug/12843.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-09-22 20:45 <a href="http://www.cppblog.com/cpunion/archive/2006/09/22/12843.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>学习备忘</title><link>http://www.cppblog.com/cpunion/archive/2006/09/07/12122.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Thu, 07 Sep 2006 06:24:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/09/07/12122.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/12122.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/09/07/12122.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/12122.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/12122.html</trackback:ping><description><![CDATA[发现不写备忘真是个坏习惯，很多准备好要学的东西有时就忘了。。<br /><br />语言：<br />haskell, lisp 函数式编程语言，受cookoo鼓舞开始学习haskell，加上haskell是实现pugs的语言，看来学一下也是应该的。lisp有时间也要看看，就当是折磨自己罢。。<br />erlang 分布式编程语言，已有应用OpenPoker,作者<strong><a href="http://lkcn.net/eubbs/index.php?showuser=9503">神宗冥浩</a>，简介 http://blog.mylkcn.net/senzung.php<br />prolog <br /><br />感觉面向对象以后的语言就没什么想象力了。。<br /><br />项目：<br />osian on dsource.org<br />ddl on dsource.org<br /><br /></strong><br />FP相关论坛：<br /><a href="http://agiletao.com/thread.php?fid=31">http://agiletao.com/thread.php?fid=31</a><br /><a href="http://ocaml.cn/">http://ocaml.cn/</a><img src ="http://www.cppblog.com/cpunion/aggbug/12122.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-09-07 14:24 <a href="http://www.cppblog.com/cpunion/archive/2006/09/07/12122.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[Linux] User-Mode Linux 相关资料收集</title><link>http://www.cppblog.com/cpunion/archive/2006/09/03/11991.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Sun, 03 Sep 2006 01:45:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/09/03/11991.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/11991.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/09/03/11991.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/11991.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/11991.html</trackback:ping><description><![CDATA[Gentoo上安装UML:<br />http://www.gentoo.org/doc/zh_tw/uml.xml<br /><img src ="http://www.cppblog.com/cpunion/aggbug/11991.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-09-03 09:45 <a href="http://www.cppblog.com/cpunion/archive/2006/09/03/11991.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[Linux] Ubuntu安装资料</title><link>http://www.cppblog.com/cpunion/archive/2006/09/01/11929.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Fri, 01 Sep 2006 08:33:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/09/01/11929.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/11929.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/09/01/11929.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/11929.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/11929.html</trackback:ping><description><![CDATA[ATI显卡驱动安装：<br />http://my.opera.com/Qoo/blog/show.dml/425812<br /><img src ="http://www.cppblog.com/cpunion/aggbug/11929.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-09-01 16:33 <a href="http://www.cppblog.com/cpunion/archive/2006/09/01/11929.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>美国国旗所代表之意義！</title><link>http://www.cppblog.com/cpunion/archive/2006/07/14/9828.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Thu, 13 Jul 2006 16:12:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/07/14/9828.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/9828.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/07/14/9828.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/9828.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/9828.html</trackback:ping><description><![CDATA[摘自：http://yuyulaw.info/wordpress/?p=54<br /><br /><br />國旗所代表之意義！<br />1989年，美國政府正是老布希執政時期<br />美國國會通過一項「美國國旗保護法」，禁止人民隨意地燒毀國旗，因為國旗有其崇高之象徵意義<br /><br />這項立法通過不到幾個小時，馬上就有民眾在國會門外燒國旗以示抗議！<br /><br />當然被美國政府一狀告進法院裡。但需要注意，數月後美國聯邦最高法院做出美國聯邦政府敗訴的判決，宣告這項法律違憲（應該是違反美國聯邦憲法第一修正案），並在判決書中寫下這樣一段擲地有聲、鏗鏘有力的經典名言：<br /><br />「如果說國旗代表其彰顯並保護了某些權利，則燒毀它就是國旗本身要保護的權利之一！」<br /><img src ="http://www.cppblog.com/cpunion/aggbug/9828.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-07-14 00:12 <a href="http://www.cppblog.com/cpunion/archive/2006/07/14/9828.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>2006中国博客调查</title><link>http://www.cppblog.com/cpunion/archive/2006/07/12/9732.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Wed, 12 Jul 2006 05:36:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/07/12/9732.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/9732.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/07/12/9732.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/9732.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/9732.html</trackback:ping><description><![CDATA[<!-- start Quanguo Boke Diaocha 2006 -->
		<a href="http://ww3.unipark.de/uc/olr_bokediaocha_2006/" target="new" border="0">
				<img src="http://ww3.unipark.de/uc/olr_bokediaocha_2006/images/logo_red.jpg" alt="China Blog Survey 2006" style="border:none" />
		</a>
		<!-- start Quanguo Boke Diaocha 2006--><img src ="http://www.cppblog.com/cpunion/aggbug/9732.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-07-12 13:36 <a href="http://www.cppblog.com/cpunion/archive/2006/07/12/9732.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>中国的网络监控还是很到位的</title><link>http://www.cppblog.com/cpunion/archive/2006/07/12/9723.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Wed, 12 Jul 2006 03:31:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/07/12/9723.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/9723.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/07/12/9723.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/9723.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/9723.html</trackback:ping><description><![CDATA[刚才收到个法Ｘ功邮件，正准备回骂一番，邮箱也打不开了，郁闷。这些法Ｘ功真是害死人，实际上邮件内容一看就知道不可信，谁吃饱了撑的要这么来整你。不知道要多久才能恢复，在这里劝这些法Ｘ功的家伙们一句，你们自己生活在梦里就行了，别骚扰别人，你这样只会让人越来越讨厌你们。<img src ="http://www.cppblog.com/cpunion/aggbug/9723.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-07-12 11:31 <a href="http://www.cppblog.com/cpunion/archive/2006/07/12/9723.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>胡主席访美热帖</title><link>http://www.cppblog.com/cpunion/archive/2006/04/25/6285.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Tue, 25 Apr 2006 15:25:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/04/25/6285.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/6285.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/04/25/6285.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/6285.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/6285.html</trackback:ping><description><![CDATA[<a href="http://www.zaobao.com/special/forum/pages3/forum_us060402.html" target="_blank">
				<font color="#1010da">[1029]买80架波音只为一顿午餐？--- 胡哥请留步！(2006-04-02)</font>
		</a>
		<br />
		<br />
		<p>
				<a href="http://www.zaobao.com/special/forum/pages3/forum_us060421.html" target="_blank">
						<font color="#1010da">[1040]"胡布会"前欢迎仪式频出错，美方应道歉(2006-04-21)</font>
				</a>
				<br />
				<br />
		</p>
		<a href="http://www.zaobao.com/special/forum/pages3/forum_us060423.html" target="_blank">
				<font color="#643685">[1046]华盛顿活生生地摆了一场鸿门宴(2006-04-23)</font>
		</a>
		<br />
		<br />
		<a href="http://www.zaobao.com/special/forum/pages3/forum_us060424.html" target="_blank">
				<font color="#643685">[1047]意外？(2006-04-24)</font>
		</a>
		<br />
		<br />
		<a href="http://www.zaobao.com/special/forum/pages3/forum_us060424a.html" target="_blank">
				<font color="#643685">[1048]冷眼看待华盛顿为胡哥摆的这场鸿门宴(2006-04-24)</font>
		</a><img src ="http://www.cppblog.com/cpunion/aggbug/6285.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-04-25 23:25 <a href="http://www.cppblog.com/cpunion/archive/2006/04/25/6285.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>其实Linux没那么难看</title><link>http://www.cppblog.com/cpunion/archive/2006/04/21/6007.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Fri, 21 Apr 2006 03:36:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/04/21/6007.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/6007.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/04/21/6007.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/6007.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/6007.html</trackback:ping><description><![CDATA[写了一大篇如何美化，被我不小心关了，不写了。<br /><br />这是我的桌面截图：http://www.cppblog.com/Files/cpunion/desktop.rar<br /><br />最近没做C++项目，也没有做C＋＋项目的截图，不过大致跟rails那张差不多布局。在linux下，如果控制台下的文本编辑器用熟了，你根本不想再回到图形界面的编辑器，它太好用了。很多linux下实用的工具，在windows下很难找到。windows有哪些在linux下没有的？我估计也就是VS了，不过即便是使用VS，我也很少使用它的调试功能。<br /><img src ="http://www.cppblog.com/cpunion/aggbug/6007.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-04-21 11:36 <a href="http://www.cppblog.com/cpunion/archive/2006/04/21/6007.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C＋＋/D/Python性能比较续</title><link>http://www.cppblog.com/cpunion/archive/2006/04/03/4932.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Mon, 03 Apr 2006 03:00:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/04/03/4932.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/4932.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/04/03/4932.html#Feedback</comments><slash:comments>27</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/4932.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/4932.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 周末抽空做了点小测试，根据http://blog.vckbase.com/jzhang/archive/2006/03/28/18807.html中m网友修改的算法，python版本中读取所有行以后就做一个排序，再去除重复项。这个算法在我的机器上执行时间是1735ms左右，属于python版本中最快的一个。D版本暂还没想到有更优化的做法，D在处理以char[]作key的关联数组时，判断方法是先判断...&nbsp;&nbsp;<a href='http://www.cppblog.com/cpunion/archive/2006/04/03/4932.html'>阅读全文</a><img src ="http://www.cppblog.com/cpunion/aggbug/4932.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-04-03 11:00 <a href="http://www.cppblog.com/cpunion/archive/2006/04/03/4932.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++/D/python性能一比</title><link>http://www.cppblog.com/cpunion/archive/2006/03/31/4840.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Fri, 31 Mar 2006 03:06:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/03/31/4840.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/4840.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/03/31/4840.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/4840.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/4840.html</trackback:ping><description><![CDATA[实际上不是全面测试性能。应该这么说：使用一个你熟悉的语言，用它写出一个高效的版本（做下面那件事）。<br /><br />不小心读到一个帖子：http://blog.vckbase.com/jzhang/archive/2006/03/28/18807.html<br /><br />看到C＋＋竟然被比下去了，自然不是很舒服，毕竟C＋＋对于C并没有太大的性能上的降低，而python是C写的（指Cpython实现），自然不会高过C。（废话，C基本上接近汇编效率了）<br /><br />可惜C＋＋又很难找出这么高效的实现，STL效率还是低了些（为什么？一直以为它很高效，用得比较放心）。最近一直比较关注D语言，于是用D语言来测试一下。代码如下：<br /><br /><div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: rgb(0, 128, 128);"> 1</span> <span style="color: rgb(0, 0, 0);">import std.stdio;<br /></span><span style="color: rgb(0, 128, 128);"> 2</span> <span style="color: rgb(0, 0, 0);">import std.</span><span style="color: rgb(0, 0, 255);">string</span><span style="color: rgb(0, 0, 0);">;<br /></span><span style="color: rgb(0, 128, 128);"> 3</span> <span style="color: rgb(0, 0, 0);">import std.perf;<br /></span><span style="color: rgb(0, 128, 128);"> 4</span> <span style="color: rgb(0, 0, 0);"><br /></span><span style="color: rgb(0, 128, 128);"> 5</span> <span style="color: rgb(0, 0, 0);"></span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);"> main(</span><span style="color: rgb(0, 0, 255);">char</span><span style="color: rgb(0, 0, 0);">[][] argv)<br /></span><span style="color: rgb(0, 128, 128);"> 6</span> <span style="color: rgb(0, 0, 0);">{<br /></span><span style="color: rgb(0, 128, 128);"> 7</span> <span style="color: rgb(0, 0, 0);">  </span><span style="color: rgb(0, 0, 255);">if</span><span style="color: rgb(0, 0, 0);"> (argv.length </span><span style="color: rgb(0, 0, 0);">&lt;</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">3</span><span style="color: rgb(0, 0, 0);">) {<br /></span><span style="color: rgb(0, 128, 128);"> 8</span> <span style="color: rgb(0, 0, 0);">    writefln(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">Wrong arguments</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /></span><span style="color: rgb(0, 128, 128);"> 9</span> <span style="color: rgb(0, 0, 0);">    </span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">1</span><span style="color: rgb(0, 0, 0);">;<br /></span><span style="color: rgb(0, 128, 128);">10</span> <span style="color: rgb(0, 0, 0);">  }<br /></span><span style="color: rgb(0, 128, 128);">11</span> <span style="color: rgb(0, 0, 0);"><br /></span><span style="color: rgb(0, 128, 128);">12</span> <span style="color: rgb(0, 0, 0);">  </span><span style="color: rgb(0, 0, 255);">const</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);"> READ_SIZE </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">1024</span><span style="color: rgb(0, 0, 0);">;<br /></span><span style="color: rgb(0, 128, 128);">13</span> <span style="color: rgb(0, 0, 0);"><br /></span><span style="color: rgb(0, 128, 128);">14</span> <span style="color: rgb(0, 0, 0);">  FILE</span><span style="color: rgb(0, 0, 0);">*</span><span style="color: rgb(0, 0, 0);"> fin </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> fopen(argv[</span><span style="color: rgb(0, 0, 0);">1</span><span style="color: rgb(0, 0, 0);">], </span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">r</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /></span><span style="color: rgb(0, 128, 128);">15</span> <span style="color: rgb(0, 0, 0);">  FILE</span><span style="color: rgb(0, 0, 0);">*</span><span style="color: rgb(0, 0, 0);"> fout </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> fopen(argv[</span><span style="color: rgb(0, 0, 0);">2</span><span style="color: rgb(0, 0, 0);">], </span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">w</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br /></span><span style="color: rgb(0, 128, 128);">16</span> <span style="color: rgb(0, 0, 0);">  </span><span style="color: rgb(0, 0, 255);">char</span><span style="color: rgb(0, 0, 0);"> buffer[READ_SIZE];<br /></span><span style="color: rgb(0, 128, 128);">17</span> <span style="color: rgb(0, 0, 0);">  </span><span style="color: rgb(0, 0, 255);">int</span><span style="color: rgb(0, 0, 0);">[</span><span style="color: rgb(0, 0, 255);">char</span><span style="color: rgb(0, 0, 0);">[]] emails;<br /></span><span style="color: rgb(0, 128, 128);">18</span> <span style="color: rgb(0, 0, 0);"><br /></span><span style="color: rgb(0, 128, 128);">19</span> <span style="color: rgb(0, 0, 0);">  PerformanceCounter counter </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);"> PerformanceCounter();<br /></span><span style="color: rgb(0, 128, 128);">20</span> <span style="color: rgb(0, 0, 0);">  counter.start();<br /></span><span style="color: rgb(0, 128, 128);">21</span> <span style="color: rgb(0, 0, 0);">  </span><span style="color: rgb(0, 0, 255);">while</span><span style="color: rgb(0, 0, 0);"> (</span><span style="color: rgb(0, 0, 0);">!</span><span style="color: rgb(0, 0, 0);">feof(fin)){<br /></span><span style="color: rgb(0, 128, 128);">22</span> <span style="color: rgb(0, 0, 0);">    fgets(cast(</span><span style="color: rgb(0, 0, 255);">char</span><span style="color: rgb(0, 0, 0);">*</span><span style="color: rgb(0, 0, 0);">)buffer, READ_SIZE, fin);<br /></span><span style="color: rgb(0, 128, 128);">23</span> <span style="color: rgb(0, 0, 0);">    </span><span style="color: rgb(0, 0, 255);">char</span><span style="color: rgb(0, 0, 0);">[] email </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> toString(cast(</span><span style="color: rgb(0, 0, 255);">char</span><span style="color: rgb(0, 0, 0);">*</span><span style="color: rgb(0, 0, 0);">)buffer);<br /></span><span style="color: rgb(0, 128, 128);">24</span> <span style="color: rgb(0, 0, 0);">    </span><span style="color: rgb(0, 0, 255);">if</span><span style="color: rgb(0, 0, 0);"> (</span><span style="color: rgb(0, 0, 0);">!</span><span style="color: rgb(0, 0, 0);">(email </span><span style="color: rgb(0, 0, 255);">in</span><span style="color: rgb(0, 0, 0);"> emails)){<br /></span><span style="color: rgb(0, 128, 128);">25</span> <span style="color: rgb(0, 0, 0);">      emails[toString(buffer)] </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);">;<br /></span><span style="color: rgb(0, 128, 128);">26</span> <span style="color: rgb(0, 0, 0);">      fputs(cast(</span><span style="color: rgb(0, 0, 255);">char</span><span style="color: rgb(0, 0, 0);">*</span><span style="color: rgb(0, 0, 0);">)email, fout);<br /></span><span style="color: rgb(0, 128, 128);">27</span> <span style="color: rgb(0, 0, 0);">    }<br /></span><span style="color: rgb(0, 128, 128);">28</span> <span style="color: rgb(0, 0, 0);">  }<br /></span><span style="color: rgb(0, 128, 128);">29</span> <span style="color: rgb(0, 0, 0);"><br /></span><span style="color: rgb(0, 128, 128);">30</span> <span style="color: rgb(0, 0, 0);">  fclose(fout);<br /></span><span style="color: rgb(0, 128, 128);">31</span> <span style="color: rgb(0, 0, 0);">  fclose(fin);<br /></span><span style="color: rgb(0, 128, 128);">32</span> <span style="color: rgb(0, 0, 0);">  counter.stop();<br /></span><span style="color: rgb(0, 128, 128);">33</span> <span style="color: rgb(0, 0, 0);"><br /></span><span style="color: rgb(0, 128, 128);">34</span> <span style="color: rgb(0, 0, 0);">  writefln(counter.milliseconds());<br /></span><span style="color: rgb(0, 128, 128);">35</span> <span style="color: rgb(0, 0, 0);">  </span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);">;<br /></span><span style="color: rgb(0, 128, 128);">36</span> <span style="color: rgb(0, 0, 0);">}<br /></span><span style="color: rgb(0, 128, 128);">37</span> <span style="color: rgb(0, 0, 0);"></span></div><br />没加fopen失败处理。<br /><br />测试结果在我的机器上耗时只有python版本的1/3，我看到其它网友的C＋＋实现最好成绩也不过1/2，由于是D是C语言所写，测试使用的又是C库，自然可以认为C语言还是比较高效的。<br /><br />上面的D语言代码里调用了toString，把char*转为char[]，它的源代码如下：<br /><div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: rgb(0, 0, 255);">char</span><span style="color: rgb(0, 0, 0);">[] toString(</span><span style="color: rgb(0, 0, 255);">char</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">*</span><span style="color: rgb(0, 0, 0);">s)<br />{<br />    </span><span style="color: rgb(0, 0, 255);">return</span><span style="color: rgb(0, 0, 0);"> s </span><span style="color: rgb(0, 0, 0);">?</span><span style="color: rgb(0, 0, 0);"> s[</span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);"> .. strlen(s)] : cast(</span><span style="color: rgb(0, 0, 255);">char</span><span style="color: rgb(0, 0, 0);">[])</span><span style="color: rgb(0, 0, 255);">null</span><span style="color: rgb(0, 0, 0);">;<br />}</span></div><br />如果s[0 .. strlen(s)]产生了复制的话，应该是会影响性能的。char[]对象是受GC管理的，应该会复制一份。这种情况下还能有如此高的效率，的确很不错。<br /><br />不过python的性能让我感觉很吃惊，以前只测试过字符串连接，感觉比较高效。<br /><br />写了一个完成一样功能的ruby程序，耗时接近python版本的2倍，当然由于对它不是很熟，可能写得不够高效。<br /><div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: rgb(0, 128, 128);"> 1</span> <span style="color: rgb(0, 0, 0);">emails </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> Hash.</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);"><br /></span><span style="color: rgb(0, 128, 128);"> 2</span> <span style="color: rgb(0, 0, 0);"><br /></span><span style="color: rgb(0, 128, 128);"> 3</span> <span style="color: rgb(0, 0, 0);">start </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> Time.now<br /></span><span style="color: rgb(0, 128, 128);"> 4</span> <span style="color: rgb(0, 0, 0);">fout </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> open(</span><span style="color: rgb(0, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">email-2-new1.txt</span><span style="color: rgb(0, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">, </span><span style="color: rgb(0, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">w</span><span style="color: rgb(0, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">)<br /></span><span style="color: rgb(0, 128, 128);"> 5</span> <span style="color: rgb(0, 0, 0);">open(</span><span style="color: rgb(0, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">email-2.txt</span><span style="color: rgb(0, 0, 0);">'</span><span style="color: rgb(0, 0, 0);">).each </span><span style="color: rgb(0, 0, 255);">do</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">|</span><span style="color: rgb(0, 0, 0);">line</span><span style="color: rgb(0, 0, 0);">|</span><span style="color: rgb(0, 0, 0);"><br /></span><span style="color: rgb(0, 128, 128);"> 6</span> <span style="color: rgb(0, 0, 0);">  </span><span style="color: rgb(0, 0, 255);">if</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">!</span><span style="color: rgb(0, 0, 0);">emails.has_key</span><span style="color: rgb(0, 0, 0);">?</span><span style="color: rgb(0, 0, 0);"> line<br /></span><span style="color: rgb(0, 128, 128);"> 7</span> <span style="color: rgb(0, 0, 0);">    emails[line] </span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);"> </span><span style="color: rgb(0, 0, 0);">0</span><span style="color: rgb(0, 0, 0);"><br /></span><span style="color: rgb(0, 128, 128);"> 8</span> <span style="color: rgb(0, 0, 0);">    fout </span><span style="color: rgb(0, 0, 0);">&lt;&lt;</span><span style="color: rgb(0, 0, 0);"> line<br /></span><span style="color: rgb(0, 128, 128);"> 9</span> <span style="color: rgb(0, 0, 0);">  end<br /></span><span style="color: rgb(0, 128, 128);">10</span> <span style="color: rgb(0, 0, 0);">end<br /></span><span style="color: rgb(0, 128, 128);">11</span> <span style="color: rgb(0, 0, 0);">puts Time.now </span><span style="color: rgb(0, 0, 0);">-</span><span style="color: rgb(0, 0, 0);"> start<br /></span><span style="color: rgb(0, 128, 128);">12</span> <span style="color: rgb(0, 0, 0);"></span></div><br />正如某网友所说，这个程序的瓶颈在于IO，拿来作性能上的比较或许是不合适的。从语言效率上来讲，自然是C++和D相当，可能会比D高，python应该会低很多。但在很多情况下，衡量效率不光是语言本身，还有库，没有库的语言是没什么吸引力的。python是一种很“慢”的语言，相对C/C＋＋来说，不过它是一门实用性的语言，所以它为一些特定用法做了优化，取得了不错的成绩。C＋＋是一门通用语言，或许太注重语言的性能了，忽略了库，导致库把性能给拉下来了。这种情况下，有人评测java和C＋＋的性能，结果是java要高，自然是不那么让人惊奇的了。可是如果标准库都这么慢，那还能指望什么呢？<br /><br />当然也并没有证明STL就特别慢，也可能是使用不正确。<br /><br /><br />只是刚好看到这个比较，忍不住参与一下，切勿当真。<br /><img src ="http://www.cppblog.com/cpunion/aggbug/4840.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-03-31 11:06 <a href="http://www.cppblog.com/cpunion/archive/2006/03/31/4840.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>［问］c代码如何生成优化的指令？</title><link>http://www.cppblog.com/cpunion/archive/2006/03/08/3897.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Wed, 08 Mar 2006 07:28:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/03/08/3897.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/3897.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/03/08/3897.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/3897.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/3897.html</trackback:ping><description><![CDATA[由于一些原因，又摸起了汇编。<BR><BR>今天歪想了一阵子，拿gcc生成的代码看了一下，结果发现它生成的代码跟我写的对应的汇编代码几乎一样，除了顺序稍有差别以外。<BR><BR>不知道编译骂依据什么规则来生成那些优化代码的，比如：<BR>if (n &gt; 7)<BR>&nbsp; n = 5;<BR>如果不打开sse，生成的代码会生成这样的代码：<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cmpl&nbsp;&nbsp;&nbsp; $7, %ecx<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; jle&nbsp;&nbsp;&nbsp;&nbsp; .L6<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; movl&nbsp;&nbsp;&nbsp; $5, %ecx<BR>.L6:<BR>打开sse，生成代码如下：<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cmpl&nbsp;&nbsp;&nbsp; $7, %ecx<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cmovl&nbsp;&nbsp; $5, %ecx<BR><BR>这种简单点的比较容易想，复杂的比如bswap指令，怎么写c程序让它生成呢？类似这样的高效指令还挺多，不知道有没有一种规则，依据这种规则就能生成对应的高效机器码。。<img src ="http://www.cppblog.com/cpunion/aggbug/3897.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-03-08 15:28 <a href="http://www.cppblog.com/cpunion/archive/2006/03/08/3897.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++和java的效率</title><link>http://www.cppblog.com/cpunion/archive/2006/03/08/3891.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Wed, 08 Mar 2006 06:13:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/03/08/3891.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/3891.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/03/08/3891.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/3891.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/3891.html</trackback:ping><description><![CDATA[最近看到有人发了个挨骂的帖子，讲的是java的jit编译器优化出来的代码比C++的要快，自然骂者甚众。<BR><BR>实际上这种可能是存在的，用gcc编译器做了点小测试，发现再怎么优化也不能生成一些新的P6指令(可能是我没掌握技巧吧)，比如条件传送指令(CMOVxx)没生成出来。我想它可能是为了兼容性吧，只生成兼容大多数CPU的指令，不知道把它能不能针对特定平台优化指令。<BR><BR>java的jit可以避免这样的兼容性问题，它在运行时才编译成机器码，自然可以生成优化指令，估计那些测试也是这么比较出来的。说它编译出来的代码比c++编译器生成的要快，我想是完全可能的，使用某些平台特定的指令可以加快执行速度。大部分C++编译器生成的都是通用指令，虽然换一台机器也可以执行，但是绝对不是效率最高的。<BR><BR>仅仅这一点不能说明java更快，别忘了，java虚拟机还要做很多别的事。也就是说，虽然生成的代码效率可能更高，但在其它方面会把速度拖慢下来。<BR><BR>既然jit有这样的优点，为何C++不把它吸收过来呢？先生成中间代码，在程序启动时生成优化代码。。。<BR><BR><img src ="http://www.cppblog.com/cpunion/aggbug/3891.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-03-08 14:13 <a href="http://www.cppblog.com/cpunion/archive/2006/03/08/3891.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>西方在二次大战中的卑鄙行为和谎言</title><link>http://www.cppblog.com/cpunion/archive/2006/02/22/3403.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Wed, 22 Feb 2006 05:01:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2006/02/22/3403.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/3403.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2006/02/22/3403.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/3403.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/3403.html</trackback:ping><description><![CDATA[<P>转自《早报网》　作者：易北河畔<BR>
<HR>
　　德国法西斯更是英、法、美一手扶植起来的。十月革命后邱吉尔就叫嚣要把共产主义扼杀在襁褓之中。十七国武装干涉失败后，他们转而指望苏联国内演变，希望苏联经济一直烂下去。斯大林同志击败了反对派，苏联进入了社会主义建设高潮，他们就又扶植法西斯主义，希望让苏德之间打得你死我活，他们可以从中取利。希特勒正是适应他们的这一需要，高喊着反苏反共的口号，以向东扩张领土为奋斗目标上台的。希特勒上台前，苏联呼吁共同阻止希特勒上台，他们不予理睬；希特勒上台后，苏联又呼吁共同遏制德国法西斯，他们仍然不予理睬。到了德国经济复苏军事上强大起来时，苏联提出共同建立反纳粹的联盟，他们只要苏联尽义务，实际上是把苏联推到和德国作战的战线上而他们可以撒手不管。正是由于他们的纵容，使得希特勒得以从容上台，又逐渐强大起来。如果不是英、法等国的放纵，希特勒根本上不了台，上台后也根本不可能扩张。他们扶植培育法西斯德国正是为了让它打苏联。可是这一切在这次纪念反法西斯六十周年里居然一字不提。 </P>
<P>　　慕尼黑这次电视里不能不提到，但是绝口不提牺牲捷克斯洛伐克是为了让德国去打苏联。却给人们一个印象，似乎英、法是为了和平。他们强迫捷克斯洛伐克接受希特勒的无理要求，并终于葬送了捷克斯洛伐克。捷克斯洛伐克曾经向苏联求取支援，可是英、法居然明确地威胁说，如果捷克斯洛伐克和苏联结盟，他们将把德国入侵捷克斯洛伐克的战争看成是反布尔什维克的战争，将和德国站在一起。英、法竟以公开地加入法西斯阵营相威胁！事实上慕尼黑阴谋已足以表明英法已经加入了法西斯阵营。后来他们和德国的战争不过是法西斯和法西斯的战争。而波兰在德国入侵捷克斯洛伐克时，正式加入了法西斯阵营和德国结盟。本来它是捷克斯洛伐克的盟国，却也对捷克斯洛伐克提出了领土要求，强占了特申地区。 </P>
<P>　　波兰历来侵略成性，不但在 1920年入侵苏联，夺走了乌克兰和白俄罗斯十万一千平方公里的土地，也不仅夺去了德国人占多数的土地搞了什么波兰走廊，而且也曾在二十年代入侵过捷克斯洛伐克，抢夺具有丰富煤矿工业发达的特申地区，但是被击退了。捷克斯洛伐克灭亡，它总算如愿以偿了，这块土地上一共有 22万人口，捷克人占了13万，它实在没有理由取得这块土地。但大波兰沙文主义终于得到了报应，本来波兰和捷克斯洛伐克应该是唇齿相依的邻邦。捷克斯洛伐克亡，就论到它了。波兰亡国实在是咎由自取。那时任何有识之士都明白波兰将受到报应，罪有应得的报应。 </P>
<P>　　其实捷克斯洛伐克完全有能力打败德国法西斯甚至给他们以重创。他们已经动员了一百万军队，拥有35个装备良好，训练有素的师。比德国还多。他们还修了一个仅次于马奇诺的防线。捷克斯洛伐克灭亡后，希特勒去视察，也不禁倒吸了一口冷气。对捷克斯洛伐克来说，最可怕的正是波兰的叛卖，波兰还有匈牙利和德国一起从三方面包围它，要瓜分它。但只要能和苏联结盟，这一切都不成问题。它自己的力量打败德国还有余，可以对付匈牙利。匈牙利力量比较小，跟罗马尼亚又是冤家，也许要观望一段时间。至于波兰是个大国，但只要有苏联这样的盟国，波兰敢在德国入侵捷克斯洛伐克时动手，苏联就可以向波兰宣战，夺回被波兰侵占的乌克兰和白俄罗斯土地。如果波兰还不歇手，就直捣华沙。 </P>
<P>　　就是没有苏联捷克斯洛伐克也足以好好地打一仗了，未必一定就失败。就是失败了也要比当亡国奴好得多。可是居然一枪不放就亡国了。捷总统说除了接受英、法的慕尼黑阴谋以外“别无选择”，怎么会没有办法呢？他不是首先靠自己的力量，而是靠英、法等大国，只能得到这样的结果。他的反动的资产阶级本性决定他要在这样好的条件下当亡国之君的，决定他要适应英法等帝国主义的利益需要放纵德国去入侵苏联的。这决不是什么和平，不敢和德国打结果还是要打仗并在战争中付出沉重的代价，后来捷克斯洛伐克的强大军队都被希特勒派到苏联去打入侵苏联的战争，替他当了炮灰。 </P>
<P>　　可是这次纪念第二次世界大战，对于这一切都居然一字不提。只字不提波兰扩张，既不提1920年入侵苏联，也不提入侵过捷克斯洛伐克。对于英、法宣称要和德国结盟把德国入侵捷克斯洛伐克看成反布尔什维克的战争也只字不提。相反对于苏德条约却大肆渲染作了歪曲片面的报道。他们连资产阶级的反共作家《第三帝国的兴亡》的作者夏伊洛都不如。 </P>
<P>　　捷克斯洛伐克亡国后，果然轮到了波兰。这次所谓的纪念反法西斯胜利只字不提英法牺牲波兰是为了让德国可以在广阔的战线上去打苏联。苏联曾经和波兰提出结成同盟以对付德国，双方订立互不侵犯条约——换句话说为了共同对付德国入侵，被波兰侵占的十万多平方公里土地可以不要了，可是这样的优厚条件也被波兰拒绝了。它要去投靠英法。英法倒也曾要苏联共同对付德国的，但实际上却只要苏联在德国入侵波兰时支援波兰，即挑起德国和波、苏的战争，他们自己并不能保证在这时参战。英国和法国的一切政策都是为了一个目的——祸水东引，让德国和苏联迎头相碰。他们和波兰的所谓结盟也不过是做做样子。在这种情况下，为什么苏联就非要适应他们的政策让德国这股祸水引向自己呢？何况波兰还侵占着自己的大片土地，不久以前，英、法等十七国还大规模武装干涉，并使得前俄国许多地方的布尔什维克受到镇压，建立起资产阶级政府，或者划给了反苏的国家。除波兰以外，芬兰占领了列宁格勒北面的一片土地，使得列宁格勒处于三面包围之中。任何人只要不是白痴，都会在这个时候和德国缔结条约，在捷克斯洛伐克事件上，英、法已经和德国结成了反苏的联盟。《苏德互不侵犯条约》的订立打破了美英法的阴谋——推动德国入侵苏联，坐山观虎斗，让苏德迎头相碰。凭什么理由要苏联为他们火中取栗？ </P>
<P>　　正像毛泽东主席所说的那样：“在波兰政府方面，它是一个法西斯的政府，是波兰地主资产阶级的反动政府，它残酷地剥削工农，压迫波兰的民族主义者；它又是一个大波兰主义的政府，因为它在波兰民族以外的许多少数民族中，即在乌克兰人、白俄罗斯人、犹太人、日耳曼人、立陶宛人等等一千余万人口的非波兰民族中，实行残酷的民族压迫；它本身是一个帝国主义的政府。二十多年来波兰反动政府甘于驱使波兰人民充当英、法财政资本的炮灰，甘愿充当国际财政资本反动战线的一个组成部分。二十多年来波兰政府一贯地反对苏联，在英、法、苏谈判中，坚决地拒绝苏联军队的援助。而这个政府又是一个十分无能的政府，一百五十万以上的大军，不堪一击，仅仅在两个星期的时间中，就葬送了自己的国家，使波兰人民遭受德国帝国主义的蹂躏。所有这一切，都是波兰政府的滔天罪恶，如果我们同情这样的政府，那是不对的。在波兰人民方面，他们是牺牲者，他们应该起来反对德国法西斯的压迫，反对自己的反动的地主资产阶级，建立独立的自由的波兰民主国家。……在那白俄罗斯民族和乌克兰民族居住的一大块土地，还是在一九一八年订立布列斯特和约的时候，就被当时的德国帝国主义从幼年的苏联手里强迫地割去，而后来又被凡尔赛条约强迫地放到波兰反动政府的统治下面。苏联现在不过是把过去失掉的土地收回来，把被压迫的白俄罗斯民族和乌克兰民族解放出来，并使免受德国的压迫。” </P>
<P>　　这一千余万人口的非波兰民族都是波兰扩张强行划入波兰得来的。 </P>
<P>　　可是在这次所谓的纪念反法西斯中，却和一切反共分子一样，把苏德签订互不侵犯条约说成是“结盟”，把苏联收复失地说成是 “从背后插了波兰一刀”。这些宣传者比许多反共分子还无耻，早就可以去加入反共联盟了，又何必老是窃据共产党的名义，并把反对自己反动政策的人民诬称为“反对共产党”呢？ </P>
<P>　　苏联一贯要求订立一个英、法、苏互助条约，可英、法、美政府并无诚意制止大战的爆发，相反他们拒绝在平等互惠的基础上订立互助条约，从而促成了战争的爆发。正像毛主席说的那样：“在现在这个世界上，拒绝了苏联，就是拒绝了和平。这一点，就是英国的路易乔治，这个资产阶级的代表人物也是知道的。” </P>
<P>　　凭什么理由说苏德签订互不侵犯条约就是结盟呢？苏联在法西斯上台前就提出阻止他们上台，可是被英、法拒绝了。后来多次提出结盟也并无诚意，只要苏德迎头相撞。现在德国和波、英、法打起了帝国主义战争，凭什么苏联就一定要参加呢？为什么苏联不参加这种帝国主义战争，严守中立并且谴责这种帝国主义战争就是和德国结盟呢？当初英、法、美可以操纵波兰入侵苏联，强占苏联领土，现在波兰崩溃了，苏联为什么就不能收复失地呢？ </P>
<P>　　在法西斯打进西班牙时，在放任法西斯德国并吞奥地利时，在慕尼黑牺牲捷克斯洛伐克时，英、法、美才真正地是和法西斯结了盟的。最后却搬起石头打了自己的脚。 </P>
<P>　　波兰竟会相信德国入侵时，英、法真会支援自己，真会和德国开战。不久以前它和德国、匈牙利一起瓜分捷克斯洛伐克，它和英、法是怎样想的？还不是牺牲了捷克斯洛伐克，美国也眼睁睁地看着捷克斯洛伐克灭亡。现在则轮到英、法、美牺牲它波兰自己了。英、法名义上不能不向德国宣战，实际却宣而不战。“西线无战事”，一场静坐战、假战争。眼睁睁看着波兰被德国并吞。实际这时德国在西线只有微不足道的军队，德法边界只有几个营，可法国明明看到德军就在步枪射程内，却始终一枪不发。在宣战上英、法之间还演出了一场好戏。法国要求先商量然后双方同时向德国宣战，而英国却故作姿态迫不及待地宣战了，把法国气得不得了??付积极支援波兰的姿态，而法国却怕宣战后德国如果进攻，战火就要立即烧到自己国土的。英国乐得在英吉利海峡对岸隔岸观火。 </P>
<P>　　英、法所以静坐战最主要的目的还是牺牲波兰满足德国，在德国打下了波兰以后，和苏联有了很长的边界线就可以去进攻苏联了。可是法国没有想到，它和英、美一起牺牲了奥地利、牺牲了西班牙、牺牲了捷克斯洛伐克，现在牺牲波兰，到明年就轮到英国牺牲它法国自己了。 </P>
<P>　　资产阶级的反共作家《第三帝国的兴亡》的作者夏伊洛还用了整整一节来描写英、法的静坐战，指出英、法的卑劣。可是这次所谓的纪念反法西斯胜利竟然连静坐战一词都从不提起。甚至还别出心裁地造出“希特勒听到英、法宣战后，愣住了。他本以为英法是不会和他作战的，没想到竟然会宣战。”只有最最无耻的反共分子才会造出这种谎言来。——希特勒的判断没有错，他反动的阶级直觉令人佩服！英、法就是不会和德国作战，宣而不战、静坐战、假战争这就是历史的真实。对于英、法并没有向德国进攻，电视里的反共宣传家又说了一个谎言，说英、法没有做好战争的准备。自古以来兵贵神速，军队天然地具有极快的速度。哪有眼睁睁地看着一个盟国灭亡还迟迟不开战的？德国威胁入侵波兰有相当长的时间，如果他们真的没有做好战争准备，那就说明他们的所谓帮助波兰原本就是虚的，骗人的。何况德国在西线并没有什么兵力，完全可以很快就从德法边界打过去。 </P>
<P>　　斯大林同志一直警惕德国，并没有因为签订了互不侵犯条约而放松了战争准备，尤其是长期的准备。只是估计情报出了难以预料的错误，以为德国将在1942年进攻苏联，因此没有作好临战准备，刚开始受了不少损失。斯大林同志立即作出了反应，要部队立即对德国进攻。反共右派对苏联和斯大林同志大加诬蔑，说苏联和德国结盟，斯大林相信互不侵犯条约根本就没作战争准备；对斯大林同志要部队立即进攻又诬蔑为指挥错误。其实在这种情况不明的时候最好的办法就是各部队各自为战以守为攻。 </P>
<P>　　对苏联战争准备不完全，他们是这样说——英、法没有做战争准备那可是那些反共分子们自己说出来的，那又该如何说呢？他们竟然把没有做战争准备作为为静坐战辩护的根据。逻辑上两套手法具备，各有各的用处。英、法倒真正和德国结了盟的，牺牲了奥地利、牺牲了西班牙、牺牲了捷克斯洛伐克，现在又以静坐战牺牲波兰了。 </P>
<P>　　夏伊洛似乎是有理由去嘲笑英、法，因为慕尼黑美国并没参与。其实这正是美国狡猾的地方，它明知英、法更关系到自己的切身利益会去牺牲捷克斯洛伐克和波兰以引导希特勒去进攻苏联，自己隔着大西洋完全可以不痛不痒地说几句。德国入侵波兰，英、法还有个口头上的宣战，它连口头上的宣战也没有。 </P>
<P>　　这次电视又用英国在海上和德国有些作战来为英国掩饰，这并不能说明问题。波兰需要的是地面部队的战斗，海上根本帮不了忙。英国历来称霸海洋，不容许任何国家拥有强大的海军。这次何不借着支援波兰的名义，把还在襁褓里的德国海军歼灭呢？争夺海上霸权是另一回事，和波兰完全没有关系。 </P>
<P>　　到了1940年，英、法终究搬起石头砸了自己的脚。法国在第一次世界大战胜利以后宰割德国，现在轮到它自己被宰割了。法国失败贝当政府投降德国后，法国就正式加入了法西斯阵营，后来大批法国军队参加了希特勒入侵苏联的战争。希特勒所以会在入侵苏联时在欧洲势如破竹，不仅仅是德国军队的强大，前面已经说过并吞捷时军队还远不如捷，也不仅仅是德国民众在第一次世界大战后受了凡尔赛条约的压迫处境悲惨心有怨气。一个相当重要的原因是欧洲都是反共的资产阶级政府，全世界资产阶级的本性都是一样的，他们与其说是害怕法西斯主义，倒不如说更希望法西斯主义强大起来去对付共产主义，德国就是在大地主大资产阶级的支持下法西斯才得以上台的，许多国家对法国所以没有有效的抵抗，就是因为反动的资产阶级害怕共产主义，认为只有法西斯能够救资本主义，他们把希特勒的侵略看成欧洲的统一，认为欧洲统一后可以一致地去对付共产主义，可以去入侵苏联并颠覆苏联。法国的贝当政府就是在这种气氛下成立的。夏伊勒也指出了当时欧洲不少人把希特勒的侵略看成是统一战争，当然不能指望他说出这种统一是为了反苏和反共。但是除此以外又是为了什么呢？ </P>
<P>　　应该指出，邱吉尔实际比张伯伦更坏。这次电视里对张伯伦和达拉第尚且要大力掩饰，邱吉尔就更是大肆吹捧为坚强的反法西斯战士了。 </P>
<P>　　如果说戈培尔谎言说尽的话，那么他对邱吉尔有一句话是说得很准确的，那就是他惯于把大败仗吹嘘为胜利。敦刻尔克原来不过是一场大溃逃，真正的大溃逃，三十几万英法联军逃到英国不但武器装备都丢完了，组织编制也都完了。士兵找不到军官，军官找不到士兵，成了一盘散沙。只能称为三十几万败兵，不能再称为军队，真正地溃不成军了，洋橡出尽。可邱吉尔竟然可以称为奇迹，如不是希特勒犯了错误，这三十多万人只能和其他英法联军一起走进德国的战俘营。这一谎言历来被英、法、美等帝国主义分子大肆吹嘘，许多无知的中间人士也在鹦鹉学舌，这次电视里自然更要大肆吹嘘了。还有不列颠空战英国的空军几乎被德国歼灭，只是希特勒又犯了一个错误才得以侥幸逃脱被歼灭的命运，即使如此也还是以牺牲伦敦等平民的生命财产为代价的，可邱吉尔居然吹嘘为英国取得了不列颠空战的胜利。这次所谓的纪念法西斯，在电视中也照吹不误。——英国真的胜利了吗？德国的空军还不是保存完好，第二年对苏联进行了大规模的狂轰滥炸。根本不是什么英国胜利了，而是希特勒不感兴趣了。所谓“海狮计划”原本就是子虚乌有的事，希特勒在部署入侵苏联了。谁都知道，飞机不能上刺刀，最后解决战斗还是靠陆军。不列颠之战在人类历史上是可以算是第一次大规模的空战，这可以写进军事书。但是和以后许多战争来比又小得微不足道了，从战略上看不过是一次象征性的战斗。美国在朝鲜战场上把朝鲜完全夷为平地。在越南战场上投下了七百万吨炸弹，大大超过了第二次世界大战中各国投弹的总和，最后的地面战斗还不是输了。邱吉尔明知道空战不能解决问题，却把那次微不足道的空战吹嘘为：“从来没有一次战争，像现在那样那么少的人决定了那么多人的命运。”他所以要做这种不着边际的吹嘘是因为德国和英国的真正战争实际已经结束了，而他要作出一付反法西斯英雄的姿态来，向人们表示他还在战斗。 </P>
<P>　　第二次世界大战法西斯德国固然是侵略者，英、美、法也是侵略者。德国入侵挪威是人所共知的，可是英国也是要入侵挪威的，希特勒还没想入侵瑞典，而邱吉尔却还想入侵瑞典。可是被德国抢了先，希特勒抢到的是一个侵略者的头衔，反正他也是死猪不怕开水烫了。但是却使英国、使邱吉尔开脱了一次侵略者的罪名。德国也多了一个敌人而少了一个帮手。 </P>
<P>　　英军退出欧洲大陆以后，一直维持了四年。德国入侵苏联，和苏联进行了人类历史上规模空前的几百万上千万人的大厮杀，英国和美国却一直在坐山观虎斗。到这时，当苏联要求他们在法国登陆，邱吉尔才提出早就该进行的阿尔及利亚登陆。以后就长期在北非进行象征性的战争。开始敌手还是不堪一击的意大利。后来才和德国作战，人不过十几万对十几万。也没有像样的空战。德国在北非失败后，他们还不想开辟第二战场，先是西西里，然后才是意大利，甚至还想赖到在巴尔干登陆，以防止在那儿抵抗法西斯的共产党夺得自己国家的解放。 </P>
<P>　　这次所谓的纪念第二次世界大战和美、英等帝国主义国家的宣传一样，把北非战役翻过来翻过去地说个不停。北非战役究竟算老几呢？对苏联进行的大规模战役除了一个莫斯科保卫战、一个斯大林格勒保卫战、一个攻克柏林不能不讲外，一概不提。苏联和德国进行了许多大规模的几十万、几百万人的战役都被他们“忽略”了。甚至连库尔斯克大会战也根本不提。——这是人类历史上规模最大的一次战役，古往今来没有一次战役有如此之多的军队参加。他们竟然可以连名字都不提，那么除此以外的大战役就都可以忽略了。如以同样的标准来衡量，那么美英的任何战役包括诺曼底都不值一提。 </P>
<P>　　美国把北非战役硬和斯大林格勒并列起来作为第二次世界大战的转折点，实在是不自量力使人可笑。可是这次发生在中国的，据说是共产党进行的纪念反法西斯胜利居然也这样说，真使人们感到这些人不是堕落到了极点便是混进共产党的反共分子。为什么不列一张表，把第二次世界大战中所有重大的战役都列出来，并以歼灭的法西斯军队数量为次序排列，如那样不但北非战役不值一提，诺曼底也得排在好后面。难道人类历史上规模最大的库尔斯克大会战倒是不值一提的吗？ </P>
<P>　　对于美英坐山观虎斗久久不开辟第二战场，这次宣传不但不于揭露，也反而百般掩饰。并且对斯大林同志和其他共产党人的谴责大加非难。 </P>
<P>　　邱吉尔为了拖延开辟第二战场曾经进行过一次非常卑劣的迪厄普登陆。他组织了七千人在法国西海岸的迪厄普登陆，事先却暗中由情报机构通知了德国，让德国做好反登陆的准备。当英国军方自己的情报机构发现德国已经知道这次登陆并且做好反登陆的准备后，通告邱吉尔要求停止登陆，可是邱吉尔置之不理，登陆一开始就被笼罩在德国的强大炮火之中，七千人损失了五千多人。但是邱吉尔一点不心痛，因为这七千人不是英国人而是加拿大人。邱吉尔以牺牲这七千人向苏联表示目前在西线登陆是不可能的。 </P>
<P>　　英美所以迟迟没有开辟第二战场是因为条件没有成熟？准备工作没有作好？——这是存心欺骗。朝鲜战争中，美国从 6月25日到仁川登陆不到三个月。何其快也？而从敦刻尔克大溃逃到诺曼底竟然要用四年，何其长也？这些反共分子可能会说诺曼底规模比仁川大得多。可是朝鲜战争不过是局部战争，而二战是全面的世界大战。只能一个解释，在诺曼底以前他们和德国打的根本不是全面的世界战争。还有在阿尔及利亚登陆规模总要比仁川小得多了吧！何况还有不少法军作内应。可是从敦刻尔克到阿尔及利亚竟然花了一年多时间。难道这不是有意拖延吗？ </P>
<P>　　他们还宣称诺曼底登陆是盟军对德反攻的开始，这又是谎言。如果说由于1942年还有斯大林格勒保卫战，所以1941年苏联的冬季大反攻不算的话，那么至少在斯大林格勒保卫战后期包围并消灭保罗斯以后，就应该定为第二次世界大战对德大反攻的开始了，自此以后，苏德战场上德国就只有招架没有还手了。中央电视台的反共宣传家们把诺曼底作为反攻的开始，不正是要把在苏联举行的一系列大规模的战役一笔抹杀吗？不是要把反法西斯胜利的功绩记在英、美账上，并为他们掩饰长达四年不开辟第二战场，坐山观虎斗，只在北非进行象征性的战争这种拙劣表演吗？ </P>
<P>　　诺曼底以后，他们对英美的作战更是大肆宣扬了又宣扬，出了一集又一集，不知道有多少集。对苏联几乎没有描写，几乎把精力全部用在宣扬美、英的战功上。甚至连一座桥的争夺也得说上好一阵。如果这也值得大做文章的话，那么南斯拉夫的《桥》，也该大大地做一篇文章了。事实上他们对于欧洲各地的抵抗运动 ——大多数是共产党人干的，几乎没有提及，没有提阿尔巴尼亚的共产党人先抵抗意大利，后抵抗德国的战斗，没提希腊共产党人的战斗，很少提到南斯拉夫的抵抗运动。其他如意大利共产党和法国共产党的抵抗运动他们也不提，或者只是简单地提一些抵抗运动，不说是哪一党哪一派的。对于越南人民在胡志明同志领导下的抗日也一字不提，对于朝鲜共产党人的斗争几乎没有提到，其他如马来亚、缅甸、菲律宾、印度尼西亚的共产党的斗争都不提。只是说美国如何如何地解放了那些国家。在意大利，共产党人的抗战，使得陶里亚蒂掌握着四十万的军队，这可比北非战役中美英军队的总和还要多。可惜没有统计数字，不然我们可以看一下，和各地的游击战争、抵抗运动比一比，北非战役到底可以排在第几位？至少规模远远地小于中国共产党的抗战。 </P>
<P>　　诺曼底以后，苏联更是加快了对德作战的力度并到了不惜付出沉重代价的地步。可是电视只写了攻克柏林。解放波兰、解放捷克斯洛伐克、占领奥地利的维也纳都几乎没有提及。美、英害怕付出代价，把柏林这块硬骨头让给苏联去啃，自己借口解决民族堡垒去休息了。所谓的民族堡垒完全是戈培尔的谎言，即使真的存在，此时解决它也不是一个要付出什么大代价的问题。可是现在的电视里居然对于民族堡垒大谈特谈，并以此来为英美逃脱攻克柏林的艰苦战斗来辩解。而柏林在苏联付出沉重代价打下后英美就要来提出分治了。许多苏联打下的地方也让了出去。不知道为什么，维也纳是苏联打下的，却没有在奥地利建立一个社会主义政府。斯大林在第二次世界大战中的最大错误就是对西方太软弱了。 </P>
<P>　　如果说对于共产党人的反法西斯的英勇斗争中央电视台的反共宣传家极力贬低的话，那么对于躲避在英国的波兰大资产阶级组成的流亡政府，在苏联军队逼近华沙时搞的一次冒险的暴动，他们却整整出了一集，并对斯大林同志大加攻击。本来苏联已经消灭了德军的大量主力，华沙一冲就到，根本就不用那次暴动。他们如果要抗德，可以稍微再等待一小段时间，等到苏联打下华沙，他们再组织军队和苏军一起去打德国不迟。这样可以付出较少的代价而得到更多的战果。可是在英国的大资产阶级流亡政府要遥控指挥搞这次暴动。真正的目的不是为了打击德国法西斯，而是利用苏联消灭法西斯的战果，在苏军到达前在华沙建立一个反苏反共的政府。他们也是利用波兰的民族命运以及波兰人民对德国法西斯的痛恨作赌注而孤注一掷，来谋取自己一个狭隘阶级的私利。在这种情况下斯大林同志对这种冒险的暴动袖手旁观是完全正确的。他们的算盘是，反正牺牲的不是他们自己，自己躲在英国很安全，牺牲的是痛恨德国法西斯的波兰民众。如果苏联见死不救，他们就可以借此攻击苏联，并在波兰掀起一股仇恨苏联的狂潮；如果苏联付出代价帮助他们，那么暴动的结果是他们回来掌权，建立起一个反苏反共的政权。——只有傻瓜才会上他们的当，被人家卖了还帮人家数钱。 </P>
<P>　　其实苏联也只是不予支持而不是参与屠杀。真正大肆屠杀反法西斯战士的是美、英、法。朝鲜、越南、马来亚前面已经讲过，东南亚所有的共产党都是在反法西斯胜利后放下武器遭到屠杀的。朝鲜、越南一下子杀不完就有了朝鲜战争和越南战争。1965年当美国要扶植马科斯上台时就说他组织了一个抗日的游击队。其实菲律宾共产党早就说过马科斯不过是一个打家劫舍，对日寇游而不击，专门袭击共产党抗日力量的土匪武装。八十年代要马科斯下台了，也是中央情报局说马科斯的抗日游击队原来是假的。最冤枉的是希腊共产党，他们抵抗德国入侵，自己把天下打下来只差举行一个开国典礼了。可听从了斯大林的话搞什么议会道路，把在英国什么力量都没有的资产阶级右派流亡政府请回来，把军队交出去。军队一交，美英就迅速地帮右派建立了一支军队，对共产党的大屠杀立即开始了。希腊共产党由此覆灭，希腊从此成了最反共的国家。法国、意大利的共产党都交了枪。阿尔巴尼亚在霍查同志领导下，打败了意大利和德国法西斯自己解放了自己的祖国。可是因为阿尔巴尼亚的资产阶级政府亲德，美、英、法竟然要制裁阿尔巴尼亚。法国的贝当政府是明确地派出大量军队加入希特勒入侵苏联的，为什么法国可以不受制裁，倒可以当联合国的常任理事国呢？为什么法国还可以参加对德国的占领呢？两次世界大战中阿尔巴尼亚政府亲德也不是毫无原因的，1912年在协约国支配下，塞尔维亚并吞了阿尔巴尼亚大片土地其主体就是科索沃，从此以后，阿尔巴尼亚人民就恨英、法。尽管如此，霍查同志领导的社会主义政府还是愿意和美、英、法建立和平友好关系，但是被他们拒绝了反过来又指责阿尔巴尼亚孤立主义闭关自守。这和他们对中国进行门户封锁，反过来又指责中国闭关锁国是一样的手法。窃据共产党名义的反共分子也都是这样说的。 </P>
<P>　　第二次世界大战以后美、英、法屠杀反法西斯战士的最大行动就算扶蒋反共支持蒋介石挑起内战围剿中国共产党了。毛主席最准确，他针锋相对、寸土必争，又以一身担天下之安危到重庆去和蒋介石谈判，并且作了不少让步。当时斯大林要求中国共产党缴枪被他拒绝了，“人民的武装，一支枪，一颗子弹都要保存，不能交出去。”。结果只有短短三年就打败了国民党反动派，建立了中华人民共和国。对于当初国民党将士凡是坚决抗日的，他都给以正确的评价并给以相当的待遇。比如台儿庄不过毙伤一万多日军就阵亡三万多将士，抚恤这三万多将士家属的沉重负担就由共产党承担起来了。当然对于对蒋介石，对国民党反动派消极抗日、积极反共、阴谋投降不能不揭露，对于他们反动腐败造成的过多的国土沦丧、人民遭殃、军队溃败、士兵大量伤亡也不能不谴责。对于美国开始坐山观虎斗、趁机大作军火生意给日本、并妄图以远东慕尼黑牺牲中国引导日本以中国为基地进攻苏联，后来又扶蒋反共，并不是真正帮助中国抗日也不能不揭露和抨击。毛泽东时代对于第二次世界大战的宣传最最符合实际了。可是现在的反共分子又把这一切全都颠倒过来了。<BR></P><img src ="http://www.cppblog.com/cpunion/aggbug/3403.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2006-02-22 13:01 <a href="http://www.cppblog.com/cpunion/archive/2006/02/22/3403.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>强烈不满google mail</title><link>http://www.cppblog.com/cpunion/archive/2005/12/22/1981.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Thu, 22 Dec 2005 14:52:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2005/12/22/1981.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/1981.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2005/12/22/1981.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/1981.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/1981.html</trackback:ping><description><![CDATA[这段时间没一天正常的，邮件看不了，还不知道该上哪报告，非常郁闷。。我现在只能每天看看标题<img src ="http://www.cppblog.com/cpunion/aggbug/1981.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2005-12-22 22:52 <a href="http://www.cppblog.com/cpunion/archive/2005/12/22/1981.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[记录] 查询“买过这本书的人也买了××书”</title><link>http://www.cppblog.com/cpunion/archive/2005/12/07/1610.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Wed, 07 Dec 2005 09:55:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2005/12/07/1610.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/1610.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2005/12/07/1610.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/1610.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/1610.html</trackback:ping><description><![CDATA[<P>好久没写SQL查询语句了，想了好久也没想出来，于是上CSDN以帖询问，有一热心老兄给了一段：<BR><BR>CREATE TABLE store (<BR>&nbsp;bookname&nbsp;VARCHAR(255) NOT NULL,<BR>&nbsp;username&nbsp;VARCHAR(255) NOT NULL,<BR>&nbsp;PRIMARY KEY (bookname, username)<BR>);</P>
<P><BR>INSERT INTO store (bookname, username) VALUES ('C++编程语言', 'a');<BR>INSERT INTO store (bookname, username) VALUES ('C++对象模型', 'a');<BR>INSERT INTO store (bookname, username) VALUES ('C++24小时通', 'a');<BR>INSERT INTO store (bookname, username) VALUES ('C++速成', 'a');</P>
<P>INSERT INTO store (bookname, username) VALUES ('C++编程语言', 'b');<BR>INSERT INTO store (bookname, username) VALUES ('C++对象模型', 'b');<BR>INSERT INTO store (bookname, username) VALUES ('C++24小时通', 'b');<BR>INSERT INTO store (bookname, username) VALUES ('C++速成', 'b');</P>
<P>INSERT INTO store (bookname, username) VALUES ('C++编程语言', 'c');<BR>INSERT INTO store (bookname, username) VALUES ('C++对象模型', 'c');<BR>INSERT INTO store (bookname, username) VALUES ('C++24小时通', 'c');<BR>INSERT INTO store (bookname, username) VALUES ('C++速成', 'c');</P>
<P>INSERT INTO store (bookname, username) VALUES ('C++编程语言', 'd');<BR>INSERT INTO store (bookname, username) VALUES ('C++24小时通', 'd');<BR>INSERT INTO store (bookname, username) VALUES ('C++速成', 'd');</P>
<P>INSERT INTO store (bookname, username) VALUES ('C++编程语言', 'e');<BR>INSERT INTO store (bookname, username) VALUES ('C++速成', 'e');</P>
<P>&nbsp;</P>
<P>select bookname, count(*) from store where username in<BR>(<BR>&nbsp;select username from store where bookname = 'C++编程语言'<BR>)<BR>and bookname &lt;&gt; 'C++编程语言'<BR>group by bookname<BR>having count(*) &gt;= 0<BR>order by count(*) desc<BR>limit 2;<BR><BR><BR>看完不禁哑然。这不是以前就用过的么？怎么现在都不会了？<BR><BR>想起以前在学校，最擅长的大概就是数据库了吧，接下来被老师拉去做C开发。找的第一个工作是WEB开发的，做了一段时间没什么兴趣。接下来是java开发，2个项目后又因为客户端视频控件的原因，回到C语言。然后又是服务器开发，这次用C++了。几个月后又因为部分项目外包的原因，开始学习python开发。最近又回到WEB开发了。<BR><BR>感觉一直是换来换去，自己都搞不准该往哪个方向走，学的东西倒是多了，不过大都不深入。长此以往，我还能说自己“熟练掌握”什么？</P><img src ="http://www.cppblog.com/cpunion/aggbug/1610.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2005-12-07 17:55 <a href="http://www.cppblog.com/cpunion/archive/2005/12/07/1610.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>《大长今》的一个错误</title><link>http://www.cppblog.com/cpunion/archive/2005/10/21/782.html</link><dc:creator>qiezi</dc:creator><author>qiezi</author><pubDate>Fri, 21 Oct 2005 11:30:00 GMT</pubDate><guid>http://www.cppblog.com/cpunion/archive/2005/10/21/782.html</guid><wfw:comment>http://www.cppblog.com/cpunion/comments/782.html</wfw:comment><comments>http://www.cppblog.com/cpunion/archive/2005/10/21/782.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/cpunion/comments/commentRss/782.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/cpunion/services/trackbacks/782.html</trackback:ping><description><![CDATA[里面有一个场影，是崔尚宫为明朝使臣做了满汉全席，显然是不合理的，满汉全席是集满、汉两族菜肴精化，兴起于清朝，明朝哪来的满汉全席？<BR><BR>这部电视剧对于朝鲜(高丽)曾经是中国的属国没有避讳，这一点来讲让人觉得没有做假。<BR><BR>该剧与国内众多辫子戏有很大的不同，至少有一个积极向上的主题思想。我认为值得一看，假如你有时间看电视剧的话。<img src ="http://www.cppblog.com/cpunion/aggbug/782.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/cpunion/" target="_blank">qiezi</a> 2005-10-21 19:30 <a href="http://www.cppblog.com/cpunion/archive/2005/10/21/782.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>