<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>七猫的藏经阁</title><link>http://blog.vckbase.com/bastet/</link><description>其实只是垃圾箱</description><managingEditor>Diviner</managingEditor><dc:language>zh-CHS</dc:language><generator>.Text Version 0.958.2004.214</generator><item><dc:creator>Diviner</dc:creator><title>奥巴马获胜演讲全文(转贴)</title><link>http://blog.vckbase.com/bastet/archive/2008/11/09/35604.html</link><pubDate>Sun, 09 Nov 2008 07:01:00 GMT</pubDate><guid>http://blog.vckbase.com/bastet/archive/2008/11/09/35604.html</guid><wfw:comment>http://blog.vckbase.com/bastet/comments/35604.html</wfw:comment><comments>http://blog.vckbase.com/bastet/archive/2008/11/09/35604.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://blog.vckbase.com/bastet/comments/commentRss/35604.html</wfw:commentRss><trackback:ping>http://blog.vckbase.com/bastet/services/trackbacks/35604.html</trackback:ping><description>&lt;H1 class=articleTitle id=headline style="FONT-SIZE: 22px; MARGIN: 5px 0px"&gt;&amp;nbsp;&lt;/H1&gt;
&lt;DIV style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bolder; FONT-SIZE: 12px; PADDING-BOTTOM: 0px; PADDING-TOP: 12px; FONT-FAMILY: times new roman"&gt;
&lt;DIV style="FLOAT: right"&gt;&lt;SPAN id=SwitchL&gt;&lt;IMG style="WIDTH: 298px; HEIGHT: 0px" src="http://chinese.wsj.com/gb/img/b.gif"&gt;&lt;SPAN style="FONT-SIZE: 14px"&gt;&lt;A class=unvisited id=LLL title=双语阅读切换 href="javascript:SwitchL(this)"&gt;英&lt;/A&gt; | &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 14px"&gt;&lt;A class=unvisited href="javascript:ChangeFont(22)"&gt;大&lt;/A&gt; | &lt;A class=unvisited href="javascript:ChangeFont(18)"&gt;中&lt;/A&gt; | &lt;A class=unvisited href="javascript:ChangeFont(14)"&gt;小&lt;/A&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;SPAN class=aTime id=T&gt;2008年11月05日17:23&lt;/SPAN&gt;&lt;BR&gt;&lt;/DIV&gt;
&lt;DIV class=times id=A style="FONT-SIZE: 14px; MARGIN: 16px 0px 0px; LINE-HEIGHT: 140%"&gt;&lt;!content_tag txt&gt;
&lt;DIV style="BORDER-RIGHT: #000000 0px solid; PADDING-RIGHT: 0px; BORDER-TOP: #000000 0px solid; PADDING-LEFT: 0px; FONT-WEIGHT: bolder; FONT-SIZE: 28px; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0px; BORDER-LEFT: #000000 0px solid; WIDTH: 28px; COLOR: #990000; LINE-HEIGHT: 140%; PADDING-TOP: 0px; BORDER-BOTTOM: #000000 0px solid"&gt;以&lt;/DIV&gt;下是奥巴马(Barack Obama)为今晚在芝加哥演讲准备的讲稿：&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;如果还有人对美国是否凡事都有可能存疑，还有人怀疑美国奠基者的梦想在我们所处的时代是否依然鲜活，还有人质疑我们的民主制度的力量，那么今晚，这些问题都有了答案。&lt;BR&gt;&lt;BR&gt;这是设在学校和教堂的投票站前排起的前所未见的长队给出的答案；是等了三四个小时的选民所给出的答案，其中许多人都是有生以来第一次投票，因为他们认定这一次肯定会不一样，认为自己的声音会是这次大选有别于以往之所在。&lt;BR&gt;&lt;BR&gt;这是所有美国人民共同给出的答案－－无论老少贫富，无论是民主党还是共和党，无论是黑人、白人、拉美裔、亚裔、原住民，是同性恋者还是异性恋者、残疾人还是健全人－－我们从来不是&amp;#8220;红州&amp;#8221;和&amp;#8220;蓝州&amp;#8221;的对立阵营，我们是美利坚合众国这个整体，永远都是。&lt;BR&gt;&lt;BR&gt;长久以来，很多人一再受到告诫，要对我们所能取得的成绩极尽讽刺、担忧和怀疑之能事，但这个答案让这些人伸出手来把握历史，再次让它朝向美好明天的希望延伸。&lt;BR&gt;&lt;BR&gt;已经过去了这么长时间，但今晚，由于我们在今天、在这场大选中、在这个具有决定性的时刻所做的，美国已经迎来了变革。&lt;BR&gt;&lt;BR&gt;我刚刚接到了麦凯恩参议员极具风度的致电。他在这场大选中经过了长时间的努力奋斗，而他为自己所深爱的这个国家奋斗的时间更长、过程更艰辛。他为美国做出了我们大多数人难以想像的牺牲，我们的生活也因这位勇敢无私的领袖所做出的贡献而变得更美好。我向他和佩林州长所取得的成绩表示祝贺，我也期待着与他们一起在未来的岁月中为复兴这个国家的希望而共同努力。&lt;BR&gt;&lt;BR&gt;&lt;SPAN id=NewAd&gt;&lt;/SPAN&gt;我要感谢我在这次旅程中的伙伴－－已当选美国副总统的拜登。他全心参与竞选活动，为普通民众代言，他们是他在斯克兰顿从小到大的伙伴，也是在他回特拉华的火车上遇到的男男女女。&lt;BR&gt;&lt;BR&gt;如果没有一个人的坚决支持，我今晚就不会站在这里，她是我过去16年来最好的朋友、是我们一家人的中坚和我一生的挚爱，更是我们国家的下一位第一夫人：米歇尔&amp;#183;奥巴马(Michelle Obama)。萨莎(Sasha)和玛丽亚(Malia)，我太爱你们两个了，你们已经得到了一条新的小狗，它将与我们一起入驻白宫。虽然我的外祖母已经不在了，但我知道她与我的亲人肯定都在看着我，因为他们，我才能拥有今天的成就。今晚，我想念他们，我知道自己欠他们的无可计量。&lt;BR&gt;&lt;BR&gt;我的竞选经理大卫&amp;#183;普劳夫(David Plouffe)、首席策略师大卫&amp;#183;艾克斯罗德(David Axelrod)以及政治史上最好的竞选团队－－是你们成就了今天，我永远感激你们为实现今天的成就所做出的牺牲。&lt;BR&gt;&lt;BR&gt;但最重要的是，我永远不会忘记这场胜利真正的归属－－它属于你们。&lt;BR&gt;&lt;BR&gt;我从来不是最有希望的候选人。一开始，我们没有太多资金，也没有得到太多人的支持。我们的竞选活动并非诞生于华盛顿的高门华第之内，而是始于得梅因、康科德、查尔斯顿这些地方的普通民众家中。&lt;BR&gt;&lt;BR&gt;我们的竞选活动能有今天的规模，是因为辛勤工作的人们从自己的微薄积蓄中拿出钱来，捐出一笔又一笔5美元、10美元、20美元。而竞选活动的声势越来越大则是源自那些年轻人，他们拒绝接受认为他们这代人冷漠的荒诞说法；他们离开家、离开亲人，从事报酬微薄、极其辛苦的工作；同时也源自那些已经不算年轻的人们，他们冒着严寒酷暑，敲开陌生人的家门进行竞选宣传；更源自数百万的美国民众，他们自动自发地组织起来，证明了在两百多年以后，民有、民治、民享的政府并未从地球上消失。这是你们的胜利。&lt;BR&gt;&lt;BR&gt;我知道你们的所做所为并不只是为了赢得大选，我也知道你们做这一切并不是为了我。你们这样做是因为你们明白摆在面前的任务有多艰巨。因为即便我们今晚欢呼庆祝，我们也知道明天将面临我们一生之中最为艰巨的挑战－－两场战争、一个面临危险的星球，还有百年来最严重的金融危机。今晚站在此地，我们知道伊拉克的沙漠里和阿富汗的群山中还有勇敢的美国子弟兵醒来，甘冒生命危险保护着我们。会有在孩子熟睡后仍难以入眠的父母，担心如何偿还月供、付医药费或是存够钱送孩子上大学。我们亟待开发新能源、创造新的工作机会；我们需要修建新学校，还要应对众多威胁、修复与许多国家的关系。&lt;BR&gt;&lt;BR&gt;前方的道路会十分漫长艰辛。我们可能无法在一年甚至一届任期之内实现上述目标，但我从未像今晚这样满怀希望，相信我们会实现。我向你们承诺－－我们作为一个整体将会达成目标。&lt;BR&gt;&lt;BR&gt;我们会遭遇挫折和不成功的开端。对于我作为总统所做的每项决定和政策，会有许多人持有异议，我们也知道政府并不能解决所有问题。但我会向你们坦陈我们所面临的挑战。我会聆听你们的意见，尤其是在我们意见相左之时。最重要的是，我会请求你们参与重建这个国家，以美国221年来从未改变的唯一方式－－一砖一瓦、胼手胝足。&lt;BR&gt;&lt;BR&gt;21个月前那个寒冬所开始的一切不应该在今天这个秋夜结束。今天的选举胜利并不是我们所寻求的改变－－这只是我们实现改变的机会。而且如果我们仍然按照旧有方式行事，我们所寻求的改变不可能出现。没有你们，也不可能有这种改变。&lt;BR&gt;&lt;BR&gt;因此，让我们发扬新的爱国精神，树立新的服务意识和责任感，让我们每个人下定决心全情投入、更加努力地工作，并彼此关爱。让我们铭记这场金融危机带来的教训：我们不可能在金融以外的领域备受煎熬的同时拥有繁荣兴旺的华尔街－－在这个国家，我们患难与共。&lt;BR&gt;&lt;BR&gt;让我们抵制重走老路的诱惑，避免重新回到长期荼毒美国政治的党派纷争和由此引发的遗憾和不成熟表现。让我们牢记，正是伊利诺伊州的一名男子首次将共和党的大旗扛到了白宫。共和党是建立在自强自立、个人自由以及全民团结的价值观上，这也是我们所有人都珍视的价值。虽然民主党今天晚上赢得了巨大的胜利，但我们是以谦卑的态度和弥合阻碍我们进步的分歧的决心赢得这场胜利的。林肯在向远比我们眼下分歧更大的国家发表讲话时说，我们不是敌人，而是朋友&amp;#8230;&amp;#8230;虽然激情可能褪去，但是这不会割断我们感情上的联系。对于那些现在并不支持我的美国人，我想说，或许我没有赢得你们的选票，但是我听到了你们的声音，我需要你们的帮助，而且我也将是你们的总统。&lt;BR&gt;&lt;BR&gt;那些彻夜关注美国大选的海外人士，从国会到皇宫，以及在这个世界被遗忘的角落里挤在收音机旁的人们，我们的经历虽然各有不同，但是我们的命运是相通的，新的美国领袖诞生了。那些想要颠覆这个世界的人们，我们必将击败你们。那些追求和平和安全的人们，我们支持你们。那些所有怀疑美国能否继续照亮世界发展前景的人们，今天晚上我们再次证明，我们国家真正的力量并非来自我们武器的威力或财富的规模，而是来自我们理想的持久力量：民主、自由、机会和不屈的希望。&lt;BR&gt;&lt;BR&gt;这才是美国真正的精华－－美国能够改变。我们的联邦会日臻完善。我们取得的成就为我们将来能够取得的以及必须取得的成就增添了希望。&lt;BR&gt;&lt;BR&gt;这次大选创造了多项&amp;#8220;第一&amp;#8221;，也诞生了很多将世代流传的故事。但是今天晚上令我难忘的却是在亚特兰大投票的一名妇女：安&amp;#183;尼克松&amp;#183;库波尔(Ann Nixon Cooper)。她和其他数百万排队等待投票的选民没有什么差别，除了一点：她已是106岁的高龄。&lt;BR&gt;&lt;BR&gt;她出生的那个时代奴隶制度刚刚结束；那时路上没有汽车，天上也没有飞机；当时像她这样的人由于两个原因不能投票－－一是她是女性，另一个原因是她的肤色。&lt;BR&gt;&lt;BR&gt;今天晚上，我想到了她在美国过去一百年间所经历的种种：心痛和希望；挣扎和进步；那些我们被告知我们办不到的世代，以及那些坚信美国信条──是的，我们能做到──的人们。&lt;BR&gt;&lt;BR&gt;曾几何时，妇女没有发言权，她们的希望化作泡影，但是安&amp;#183;尼克松&amp;#183;库波尔活了下来，看到妇女们站了起来，看到她们大声发表自己的见解，看到她们去参加大选投票。是的，我们能做到。&lt;BR&gt;&lt;BR&gt;当30年代的沙尘暴和大萧条引发人们的绝望之情时，她看到一个国家用罗斯福新政、新就业机会以及对新目标的共同追求战胜恐慌。是的，我们能做到。&lt;BR&gt;&lt;BR&gt;当炸弹袭击了我们的海港、独裁专制威胁到全世界，她见证了美国一代人的伟大崛起，见证了一个民主国家被拯救。是的，我们能做到。&lt;BR&gt;&lt;BR&gt;她见证了蒙哥马利公车上的种族隔离、伯明翰的民权运动、塞尔马大桥上的人权游行，一位来自亚特兰大的传教士告诉人们：我们能成功。是的，我们能做到。&lt;BR&gt;&lt;BR&gt;人类登上月球、柏林墙倒下，世界因我们的科学和想像被连接在一起。今年，就在这次选举中，她用手指触碰屏幕投下自己的选票，因为在美国生活了106年之后，经历了最好的时光和最黑暗的时刻之后，她知道美国如何能够发生变革。是的，我们能做到。&lt;BR&gt;&lt;BR&gt;美国，我们已经走过漫漫长路。我们已经历了很多。但是我们仍有很多事情要做。因此今夜，让我们自问－－如果我们的孩子能够活到下个世纪；如果我们的女儿有幸活得和安一样长，他们将会看到怎样的改变？我们将会取得怎样的进步？&lt;BR&gt;&lt;BR&gt;现在是我们回答这个问题的机会。这是我们的时刻。这是我们的时代－－让我们的人民重新就业，为我们的后代敞开机会的大门；恢复繁荣发展，推进和平事业；让&amp;#8220;美国梦&amp;#8221;重新焕发光芒，再次证明这样一个基本的真理：我们是一家人；一息尚存，我们就有希望；当我们遇到嘲讽和怀疑，当有人说我们办不到的时候，我们要以这个永恒的信条来回应他们：&lt;BR&gt;&lt;BR&gt;是的，我们能做到。感谢你们。愿上帝保佑你们，保佑美利坚合众国。&lt;/DIV&gt;&lt;img src ="http://blog.vckbase.com/bastet/aggbug/35604.html" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Diviner</dc:creator><title>7zip解压和lzma压缩解压的CPP代码（注：这里的7zip archive解压在solid压缩的情况下不是非常好，那种情况下最好要用dll接口)</title><link>http://blog.vckbase.com/bastet/archive/2008/11/06/35580.html</link><pubDate>Thu, 06 Nov 2008 00:54:00 GMT</pubDate><guid>http://blog.vckbase.com/bastet/archive/2008/11/06/35580.html</guid><wfw:comment>http://blog.vckbase.com/bastet/comments/35580.html</wfw:comment><comments>http://blog.vckbase.com/bastet/archive/2008/11/06/35580.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blog.vckbase.com/bastet/comments/commentRss/35580.html</wfw:commentRss><trackback:ping>http://blog.vckbase.com/bastet/services/trackbacks/35580.html</trackback:ping><description>&lt;DIV&gt;测试代码比较简单&lt;BR&gt;#include "../lib7z/archive7z.h"&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;int main(int argc,char *argv[])&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;CArchive7Zip archive("c:\\data\\All_2008-01-02_AM.7z");&lt;BR&gt;&amp;nbsp;if(archive.IsOpen())&lt;BR&gt;&amp;nbsp;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;void *buf=0;&lt;BR&gt;&amp;nbsp;&amp;nbsp;size_t buflen=0;&lt;BR&gt;&amp;nbsp;&amp;nbsp;if(archive.GetEntireFile("900957.dat",buf,buflen))&lt;BR&gt;&amp;nbsp;&amp;nbsp;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;printf("len is %d\n",buflen);&lt;BR&gt;&amp;nbsp;&amp;nbsp;}&lt;BR&gt;&amp;nbsp;}&lt;BR&gt;&amp;nbsp;return 0;&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;链接的地方在：&lt;BR&gt;http://blog.vckbase.com/Files/BastEt/lib7z.rar&lt;/DIV&gt;&lt;img src ="http://blog.vckbase.com/bastet/aggbug/35580.html" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Diviner</dc:creator><title>新蜜蜂的寓言（转贴）</title><link>http://blog.vckbase.com/bastet/archive/2008/11/03/35535.html</link><pubDate>Mon, 03 Nov 2008 00:40:00 GMT</pubDate><guid>http://blog.vckbase.com/bastet/archive/2008/11/03/35535.html</guid><wfw:comment>http://blog.vckbase.com/bastet/comments/35535.html</wfw:comment><comments>http://blog.vckbase.com/bastet/archive/2008/11/03/35535.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://blog.vckbase.com/bastet/comments/commentRss/35535.html</wfw:commentRss><trackback:ping>http://blog.vckbase.com/bastet/services/trackbacks/35535.html</trackback:ping><description>企业公民&amp;#8221;（Corporate Citizenship）和&amp;#8220;企业社会责任&amp;#8221;（Corporate Social Responsibility）在中国商业世界正成为时尚话题。 
&lt;TABLE cellSpacing=0 cellPadding=0 align=left border=0&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD vAlign=top&gt;
&lt;TABLE height=250 cellSpacing=4 cellPadding=0 width=350 border=0&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD align=left width=350 height=250&gt;
&lt;DIV id=_turnAD12 width="350" height="250"&gt;
&lt;OBJECT id=_bflexO height=250 width=350 classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000&gt;&lt;PARAM NAME="_cx" VALUE="9260"&gt;&lt;PARAM NAME="_cy" VALUE="6615"&gt;&lt;PARAM NAME="FlashVars" VALUE=""&gt;&lt;PARAM NAME="Movie" VALUE="http://images.sohu.com/cs/button/yiqi/200609/3502500918.swf"&gt;&lt;PARAM NAME="Src" VALUE="http://images.sohu.com/cs/button/yiqi/200609/3502500918.swf"&gt;&lt;PARAM NAME="WMode" VALUE="Transparent"&gt;&lt;PARAM NAME="Play" VALUE="-1"&gt;&lt;PARAM NAME="Loop" VALUE="-1"&gt;&lt;PARAM NAME="Quality" VALUE="High"&gt;&lt;PARAM NAME="SAlign" VALUE=""&gt;&lt;PARAM NAME="Menu" VALUE="-1"&gt;&lt;PARAM NAME="Base" VALUE=""&gt;&lt;PARAM NAME="AllowScriptAccess" VALUE=""&gt;&lt;PARAM NAME="Scale" VALUE="ShowAll"&gt;&lt;PARAM NAME="DeviceFont" VALUE="0"&gt;&lt;PARAM NAME="EmbedMovie" VALUE="0"&gt;&lt;PARAM NAME="BGColor" VALUE=""&gt;&lt;PARAM NAME="SWRemote" VALUE=""&gt;&lt;PARAM NAME="MovieData" VALUE=""&gt;&lt;PARAM NAME="SeamlessTabbing" VALUE="1"&gt;&lt;PARAM NAME="Profile" VALUE="0"&gt;&lt;PARAM NAME="ProfileAddress" VALUE=""&gt;&lt;PARAM NAME="ProfilePort" VALUE="0"&gt;&lt;PARAM NAME="AllowNetworking" VALUE="all"&gt;&lt;PARAM NAME="AllowFullScreen" VALUE="false"&gt;&lt;/OBJECT&gt;&lt;/DIV&gt;
&lt;SCRIPT language=javascript&gt; 
 try{ 
 var __bDIV = document.getElementById("_turnAD12"); 
 var _coName = "_turnAD12"; 
 var __now = new Date(); 
 var _exp = new Date(); 
 _exp.setTime(_exp.getTime() + parseInt(24*60*60*1000)); 
 function bannerSetCookie(_Name,_Value){ 
 var _argv = bannerSetCookie.arguments; 
 var _argc = bannerSetCookie.arguments.length; 
 var _expires = (_argc &gt; 2) ? _argv[2]: null; 
 var _path = (_argc &gt; 3) ? _argv[3]: null; 
 var _domain = (_argc &gt; 4) ? _argv[4]: null; 
 var _secure = (_argc &gt; 5) ? _argv[5]: false; 
 document.cookie = _Name + "=" + escape(_Value) + ((_expires == null) ? "" : (  
 "; expires=" + _expires.toGMTString())) + ((_path == null) ? "" : (  
 "; path=" + _path)) + ((_domain == null) ? "" : ("; domain=" + _domain)) + ((_secure == true) ? "; secure" : "");; 
 } 
 function bannerGetCookie(_Name){ 
 var _s_co = document.cookie; 
 var _s_coVal = _s_co.indexOf(_Name)==-1 ? 0 : _s_co.substring(parseInt(_Name.length+parseInt(_s_co.indexOf(_Name)))+1,parseInt(_Name.length+parseInt(_s_co.indexOf(_Name)))+3); 
 return unescape(_s_coVal); 
 } 
 function getRandom(_ADnum){ 
 return Math.ceil(Math.random()*_ADnum); 
 } 
 function showBanner(){ 
 var ADnum=2; 
 var basenum=0; 
 var _sBanner = bannerGetCookie(_coName); 
 if(parseInt(_sBanner,10)==0){ 
 basenum = getRandom(ADnum); 
 bannerSetCookie(_coName,parseInt(basenum,10)&lt;10?"0"+String(parseInt(basenum,10)):String(parseInt(basenum,10)),_exp); 
 } 
 else if(parseInt(_sBanner,10)&gt;ADnum-1) {basenum=1;bannerSetCookie(_coName,"01",_exp);} 
 else { 
 basenum=parseInt(_sBanner,10)+1; 
 bannerSetCookie(_coName,parseInt(basenum,10)&lt;10?"0"+String(parseInt(basenum,10)):String(parseInt(basenum,10)),_exp); 
 } 
 var _sBnn; 
if (basenum==1){ 
var sohuFlash2 = new sohuFlash("http://images.sohu.com/cs/button/yiqi/200609/3502500918.swf", "_bflexO", "350", "250", "7"); 
sohuFlash2.addParam("quality", "high"); 
  sohuFlash2.addParam("wmode", "transparent"); 
 sohuFlash2.addVariable("clickthru","http://ngoto.sohu.com/D=SOHU/A=e6310f671d65559e44d1089e1306bd88/T=K1/&gt;http://ad.bitauto.com:80/adsunion/lnk/;ik=450f6516d398e;pl=pl-34-325;/?http://www.faw-benteng.com"); 
  sohuFlash2.write("_turnAD12"); 
 } 
else{ 
var sohuFlash2 = new sohuFlash("http://images.sohu.com/cs/button/gonghang/200611/bizpip1107.swf", "_bflexO", "350", "250", "7"); 
sohuFlash2.addParam("quality", "high"); 
  sohuFlash2.addParam("wmode", "Opaque"); 
 sohuFlash2.addVariable("clickthru",""); 
  sohuFlash2.write("_turnAD12"); 
 } 
} showBanner(); 
 }catch(e){} 
 &lt;/SCRIPT&gt;
&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;IFRAME marginWidth=0 marginHeight=0 src="http://images.sohu.com/cs/button/ls/piplink.html" frameBorder=0 width=350 scrolling=no height=52 bordercolor="#000000"&gt;&lt;/IFRAME&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;正如我们屡屡见到的，一种严肃的话题被通俗化，不是其幸运反而可能是其被庸俗化的开端。无论其本身的内涵如何丰富，一个话题一旦成为人们在不明所以中竞相谈论的话题，或者将与之无关的东西附会其上，那么它不仅不会变成一种普遍的共识，而且可能在被过度谈论中迅速变得空洞无趣，直至成为一个人所共知的笑柄。
&lt;P&gt;　　但真正的危险还不在这里。&amp;#8220;企业公民&amp;#8221;和&amp;#8220;企业社会责任&amp;#8221;不是（至少不仅仅是）企业有余钱余物时向公众示好买好的捐款捐物，不是以&amp;#8220;转移支付&amp;#8221;方式巧妙变相的&amp;#8220;事件营销&amp;#8221;，更不是问心有愧的企业和商人为洗白自己或包装自己而进行的&amp;#8220;非常投资&amp;#8221;。正如老子所言：&amp;#8220;天下皆知善之为善者，斯恶也。&amp;#8221;当&amp;#8220;企业公民&amp;#8221;和&amp;#8220;企业社会责任&amp;#8221;行为被作为一种善行来提倡时，诸多的恶行或与善恶无关的行为很可能&amp;#8220;假汝之名而行&amp;#8221;。这就是企业公民面临的真正的危险&amp;#8212;&amp;#8212;成为&amp;#8220;伪善&amp;#8221;的代名词，最终让人们避而远之。&lt;/P&gt;
&lt;P&gt;　　作为一种商业伦理，企业公民要想成为商业世界普遍的共识，它一定不能作为一种外在的规范来提倡。道德说教只能导致对伪善和对道德的抵触。只有当企业家意识到企业公民行为与企业家自身的需求和企业日常的经营活动有一种内在的、隐秘的关联时，企业公民才可能成为企业家们内在的共识。&lt;/P&gt;
&lt;P&gt;　　&amp;#8220;敖包&amp;#8221;是怎样建成的？&lt;/P&gt;
&lt;P&gt;　　在内蒙古草原上，有一种名叫&amp;#8220;敖包&amp;#8221;的&amp;#8220;建筑&amp;#8221;。其实它很难称得上是&amp;#8220;建筑&amp;#8221;，因为它看上去不过是一堆石头而已。这种不是建筑的建筑因为一首名为《敖包相会》的蒙古民歌而名扬天下，但知道其用途和&amp;#8220;建筑&amp;#8221;过程的人并不多。&lt;/P&gt;
&lt;P&gt;　　事实上，这是蒙古草原上的一种重要的公共基础设施。在人烟稀少的草原上行走，人是很容易迷失方向的，因为草原上除了草还是草，没有大树，没有村落（人们都是逐水草而居）来充当地标。这种状况与船在大海上航行非常相似。为了在大海上顺利航行，人类发明了作为导航设备的灯塔，而敖包就是蒙古民族在茫茫草原上建成的&amp;#8220;灯塔&amp;#8221;。&lt;/P&gt;
&lt;P&gt;　　蒙古草原上无数的敖包是如何建起来的呢？我们容易以为是某个权势巨大的统治者下令建起来的。在如此地广人稀的土地上，把一个个行踪不定的游牧部落组织起来进行这样一个浩大的工程是不可能的。事实上，所有的敖包都是千百年来，人们自发建成的。在蒙古民族中有一种民间信仰：如果你看到了石头（在草原上石头是很稀少的），就是看到了你的&amp;#8220;福气&amp;#8221;，如果你拿着石头绕着别的石头走一圈，然后把它与别的石头放在一起，你就是在为自己增添福气。人人都愿意自己的福气尽可能地多，所以当一个人看到一块石头时就会捡起来，等看到别的石头时就把它放在那儿。这种信仰代代相传，草原上的石头堆（即敖包）就越来越多，每个敖包也越垒越高。就在一代又一代人为各自&amp;#8220;谋福利&amp;#8221;的过程中，一个服务于所有人（包括后代子孙）的导航系统就在广亵的蒙古草原上建成了。&lt;/P&gt;
&lt;P&gt;　　蜜蜂的寓言&lt;/P&gt;
&lt;P&gt;　　在敖包是如何建成的故事中，我们看到了一个&amp;#8220;意想不到的转换逻辑&amp;#8221;：每个人出于私心的行为竟然成就了一种公共福利。&lt;/P&gt;
&lt;P&gt;　　这个逻辑看似简单，但人类发现这个逻辑却很不容易。通常认为，这个逻辑是亚当&amp;#183;斯密发现的。他把这个意想不到的转换形容为一只&amp;#8220;看不见的手&amp;#8221;。在《国富论》中他这样写道：&amp;#8220;每个个体既不打算促进公共利益，也不知道提升多少公共利益。他只在乎他自己的保障，自己的收益。个体被一只看不见的手所引导，最终达到的结果并非他自己的意图。个体通过追求自身的利益来促进社会收益，往往比他真正打算促进社会收益时更有效率。&amp;#8221; &amp;#8220;我们每天所需的食料和饮料，不是出自屠户、酿酒家或烙面师的恩惠，而是出于他们自利的打算。我们不说唤起他们利他心的话，而说唤起他们利己心的话。我们不说自己需要，而说对他们有利。&amp;#8221;&lt;/P&gt;
&lt;P&gt;　　身为格拉斯哥大学道德哲学教授的亚当&amp;#183;斯密试图回答一个古老的伦理学问题：个人利益与公共利益之间的关系到底是怎样的？二者之间是传统所认为的势不两立，还是存在着我们未曾察觉的相通相融的关系。&lt;/P&gt;
&lt;P&gt;　　亚当&amp;#183;斯密认为是后者。人类在道德问题上的传统焦虑被宣布为庸人自扰，人尽可以放心大胆地追求自己的利益，根本不用担心&amp;#8220;自利&amp;#8221;会有损公共利益，相反，只有当个体专注于自己的利益的追求，在追求自利上精益求精（即&amp;#8220;分工&amp;#8221;），让自己的利益最大化时，一只看不见的手就会神奇地将个人的追求转化为社会的利益。&amp;#8220;总体收益的结果，有别于创造收益的个体意向&amp;#8221;。&lt;/P&gt;
&lt;P&gt;　　1776年，被人们称为工业社会的元年。这一年中发生了两件大事：一是瓦特发明了蒸汽机，一是亚当&amp;#183;斯密出版了《国富论》。前者意味着革命性的生产工具的出现，后者为工业社会的运行机制（市场和社会分工）奠定了理论基础。以大机器为生产工具，按照效率最大化的分工原则进行生产，通过市场进行交易的现代工商企业出现了。企业唯一的社会责任和义务就是追求自身利益的最大化，因为这本身就是在使社会利益最大化。&lt;/P&gt;
&lt;P&gt;　　这种思想具有革命性意义，但它并非亚当&amp;#183;斯密首创。亚当&amp;#183;斯密是从一个名叫曼德维尔的人那里继承来的。&lt;/P&gt;
&lt;P&gt;　　1720年，曼德维尔出版了一本书，书名叫做《蜜蜂的寓言，或私人的恶行，公共的利益》。他把人类社会比喻为一个蜂巢：&amp;#8220;这些昆虫生活于斯，宛如人类，微缩地表演人类的一切行为。&amp;#8221;在&amp;#8220;这个蜜蜂的国度&amp;#8221;里，每只蜜蜂都在近乎疯狂地追求自己的利益，虚荣、伪善、欺诈、享乐、嫉妒、好色等恶德在每只蜜蜂身上表露无遗。令人惊异的是，当每只蜜蜂在疯狂追逐自己的利益时，整个蜂巢呈现出一派繁荣的景象。后来，邪恶的蜜蜂突然觉悟了，向天神要求让他们变得善良、正直、诚实起来。&amp;#8220;主神终于愤怒地发出誓言：使那个抱怨的蜂巢全无欺诈。神实现了誓言&amp;#8230;&amp;#8230;&amp;#8221;接着，在整个蜜蜂的王国中，一磅贬值为一文，昔日繁忙的酒店渺无人迹，不再有人订货，全国一片萧条景象。&lt;/P&gt;
&lt;P&gt;　　这就是说，私欲的&amp;#8220;恶之花&amp;#8221;结出的是公共利益的善果。这就是著名的&amp;#8220;曼德维尔悖论&amp;#8221;。从道德的角度看，以自利驱动的行为是应该受到谴责的，但如果想以&amp;#8220;公共精神&amp;#8221;的道德情怀来建立一种充满美德的繁荣社会，那只是一种&amp;#8220;浪漫的奇想&amp;#8221;，因为私欲和私欲支配的个人恶行恰恰是社会繁荣的能源，离开了这个能源，公共利益将是无源之水，无本之木。公益心和道德感这样的善之花，都将结出贫困和伪善的恶之果。&lt;/P&gt;
&lt;P&gt;　　曼德维尔的&amp;#8220;蜜蜂的寓言&amp;#8221;是现代自由主义经济学和经济伦理的基本隐喻。其理论主旨是弘扬私欲，相信市场对私人恶行具有神奇的转化和净化力量，认定出于道德情怀的行为不仅不可行而且可能危及公共利益。&lt;/P&gt;
&lt;P&gt;　　换言之，曼德维尔的&amp;#8220;蜜蜂的寓言&amp;#8221;与其说是一个&amp;#8220;寓言&amp;#8221;，不如说是一个神话，一个关于道德无益，私欲和市场万能的神话。这个神话被发展成为一个庞大的理论体系，并成为一种被广泛接受的意识形态。但自问世起，曼德维尔的&amp;#8220;蜜蜂的寓言&amp;#8221;一直遭到理论上的质疑和事实上的挑战。具体到商业领域，关于企业是一个纯粹为自身赚取利润的组织，还是一个应该承担社会责任的组织，也一直是一个争论不休的问题。&lt;/P&gt;
&lt;P&gt;　　&amp;#8220;公地的悲剧&amp;#8221;&lt;/P&gt;
&lt;P&gt;　　1968年，美国学者哈定在《科学》杂志上发表了一篇题为《公地的悲剧》的文章。英国曾经有这样一种土地制度&amp;#8212;&amp;#8212;封建主在自己的领地中划出一片尚未耕种的土地作为牧场（称为&amp;#8220;公地&amp;#8221;），无偿向牧民开放。这本来是一件造福于民的事，但由于是无偿放牧，每个牧民都养尽可能多的牛羊。随着牛羊数量无节制地增加，公地牧场最终因&amp;#8220;超载&amp;#8221;而成为不毛之地，牧民的牛羊最终全部饿死。&lt;/P&gt;
&lt;P&gt;　　&amp;#8220;公地的悲剧&amp;#8221;是一个远超出环境和生态问题的寓言，与蜜蜂的寓言&amp;#8220;相映成趣&amp;#8221;。它是对&amp;#8220;每个个体都追求自己的私利，看不见的手就会奇妙地将其转化成公共利益&amp;#8221;说法的讽刺。&amp;#8220;看不见的手&amp;#8221;为何失灵？为市场辩护的人的解释是：问题出在&amp;#8220;公地&amp;#8221;的产权不明晰，是公地产权的&amp;#8220;公有制&amp;#8221;性质导致了公地的悲剧。但这与其说是回答问题，不如说是掩盖问题。&amp;#8220;公地的悲剧&amp;#8221;包含的真实问题是：个体如何在利用产权不可能明晰的资源时避免资源的衰竭，从而导致公共利益的丧失？在人生活的世界上，有许多资源，而且是对人的生存最重要的资源（如阳光、空气等自然资源和良好的社会治安、社会道德氛围、文化资源）往往是难以确定产权的。在利用这些看似免费的资源时，我们如何才能避免&amp;#8220;公地的悲剧&amp;#8221;？&lt;/P&gt;
&lt;P&gt;　　曼德维尔在讲他的寓言的时候，至少忽略了两点：一、人们在寻求自己私欲的时候，既有可能是个体间的相互利用、交易、竞争甚至相互欺诈、掠夺，也有可能是没有节制地利用无人所有的资源，人们出于私利为他人生产时，既包含自己承担的成本，也包含看似免费的社会成本。以&amp;#8220;公地的悲剧&amp;#8221;为例，为了使自己的收益更大，牧民会多养几头牛，他购买牛犊的成本是私人成本，但牛犊要长大，就必须吃草，这些草也是&amp;#8220;生产&amp;#8221;一头牛的成本，只不过这个成本是无需他本人承担的社会成本。&amp;#8220;公地&amp;#8221;尽管能够&amp;#8220;免费&amp;#8221;承担养一头牛的社会成本，但其承担成本的能力总是有限的。在其承担能力允许值以内，&amp;#8220;免费&amp;#8221;的假象一直维持着，让牧民以为&amp;#8220;生产&amp;#8221;一头牛的成本只是购买牛犊的费用和自己付出的劳动，直到&amp;#8220;公地&amp;#8221;因过度放牧而无力承担生产每头牛的社会成本，这个隐性成本才被意识到。&amp;#8220;私人的恶行&amp;#8221;要想通过&amp;#8220;看不见的手&amp;#8221;转化为公共的利益，不能以暂时免于支付的社会成本当作私人的&amp;#8220;收益&amp;#8221;，损害社会成本的支付能力，使整个公共利益减少甚至衰竭。&lt;/P&gt;
&lt;P&gt;　　曼德维尔忽略的第二点是：公共利益的总量并非私人在交易活动中获得利益的总和。我们得到的许许多多&amp;#8220;好处&amp;#8221;（比如呼吸清新的空气、感受到的良好的社会氛围）都不是从交易活动中来的，个体拥有产权的东西所带来的好处往往超出（有时是大大超出）我们从交易活动中得到的个人收益。比如一个人拥有一片林地，他可以通过木材销售来获得收益。林地不仅生产木材，它从事的&amp;#8220;生产&amp;#8221;包括吸收二氧化碳、释放清新的空气、保持水土、为各种动植物提供生存环境等等，这些都是公共利益的一部分。当你因为木材价格暴涨而把整个林地砍伐尽净，获得了巨量的个人财富时，公共利益却受到损害。你不能说你对个人利益的追求促进了公共利益。&lt;/P&gt;
&lt;P&gt;　　也许你会说，砍伐这片林地对这个地区的生态环境的不良影响几乎看不到，公共利益谈不上受到了损害。在&amp;#8220;公地&amp;#8221;上放牧的人也都是这么想的：我多养一头牛对草场的损害微小到可以忽略不计。事实上，这就是导致&amp;#8220;公地的悲剧&amp;#8221;的逻辑之一。哲学上把这种逻辑称为&amp;#8220;秃头怪论&amp;#8221;。一个人掉一根头发不可能变成秃子，掉二根、三根、四根&amp;#8230;&amp;#8230;都不可能使一个人成为秃头，所以掉一根头发不是成为秃子的原因，至少你不能准确地说出人掉到哪根头发才成为秃子，所以任何一根掉落的头发对一个人成为秃头都不负有责任。&lt;/P&gt;
&lt;P&gt;　　无论是曼德维尔的蜜蜂，还是在&amp;#8220;公地&amp;#8221;上放牧的牧民，都有一个共同的特点：它们虽然与其他个体共同生活在一个地方，但他们都自认为唯一的责任是让自己的利益最大化，而对他人和环境负不了也无需负责任。他们只把私人财产（可以自由支配的资源）当作是自己的财富，把私人成本当作是成本的全部。&lt;/P&gt;
&lt;P&gt;　　新&amp;#8220;蜜蜂的寓言&amp;#8221;&lt;/P&gt;
&lt;P&gt;　　&amp;#8220;公民&amp;#8221;是一个外来语，起源于古希腊。希腊文的&amp;#8220;公民&amp;#8221;（Polites）一词是由城邦（Polis）一词衍生而来，意为&amp;#8220;属于城邦的人&amp;#8221;。与之相对的，当然就是不属于城邦的人，即&amp;#8220;非公民&amp;#8221;&amp;#8212;&amp;#8212;&amp;#8220;客居者&amp;#8221;、&amp;#8220;奴隶&amp;#8221;、&amp;#8220;异邦人&amp;#8221;，即在城邦这个共同体中不拥有身份和资格，对城邦事务没有责任当然也没有参与权利的人。他们即使生活在城邦里，也是与城邦漠不相关的人。&lt;/P&gt;
&lt;P&gt;　　简言之，&amp;#8220;公民&amp;#8221;是一个既独立又不独立的概念，指的是一个有所属的个体而不是原子式的个体。所谓&amp;#8220;企业公民&amp;#8221;，就是自觉地把自己归属于社区共同体、社会共同体和人类共同体的企业，在核算成本时，将社会成本、环境成本考虑在内，在计算收益时将企业收益、社会收益和环境收益同时计算在内，在做投资决策时将市场、社会和环境的投资回报率计算在内。拥有&amp;#8220;企业公民&amp;#8221;身份和资格的企业，就是在&amp;#8220;公地&amp;#8221;上谋求生存和发展的同时守望、养护&amp;#8220;公地&amp;#8221;，力图避免&amp;#8220;公地的悲剧&amp;#8221;发生的企业。&lt;/P&gt;
&lt;P&gt;　　英国学者约翰&amp;#183;埃尔金顿把这种企业描述为同时追求&amp;#8220;三重盈余&amp;#8221;&amp;#8212;&amp;#8212;经济盈余、社会盈余和环境盈余的企业。企业公民意识的有无，首先表现在对企业的所有权的认知。没有企业公民意识的企业，认为企业的股东仅是为企业提供资金者，企业经营的目的，就是为股东的投资带来回报并且使回报最大化。但追求三重盈余的企业认为企业的股东至少有三个：自然环境、社会和投资人。企业经营者的真实身份是受托于这三个股东的&amp;#8220;公民CEO&amp;#8221;，他的经营行为是确保三个&amp;#8220;出资人&amp;#8221;同时受益，而不是为了一个股东利益的最大化而牺牲其他两个股东的利益。&lt;/P&gt;
&lt;P&gt;　　一旦我们引入&amp;#8220;三重盈余&amp;#8221;标准，同样是在成长和盈利的企业就可以划分为四种类型。我们把企业置入一个座标系中，横轴是企业自身的规模和利润的成长，即企业的影响力，受益者是作为企业出资人的股东，竖轴是企业对环境（包括社会环境和自然环境）的回报，受益者是社会和自然这两个&amp;#8220;股东&amp;#8221;。按高影响力和低影响力、对环境的回报和破坏，企业就这样分成了四种类型：&lt;/P&gt;
&lt;P&gt;　　一、蜜蜂型企业：影响力高且对环境的回报率高。蜜蜂为了酿蜜，就必须从各种植物中采集花蜜&amp;#8212;&amp;#8212;这可以看作是对环境资源的索取。而它在采蜜的同时，它翅膀上粘附的花粉就会给花授粉。如果没有蜜蜂来采蜜，花也就成了不结果实之花。（经济学家张五常在深入调查的基础上写出了一篇著名的经济学论文《蜜蜂的寓言》，涉及到了到底是果农该付给养蜂人钱还是该向养蜂人收钱的问题。）曼德维尔只注意到蜜蜂间的生存竞争，没有看到蜜蜂与环境之间的这种索取回报的关系&amp;#8212;&amp;#8212;在从环境中索取资源的同时回报环境，使自己的&amp;#8220;盈利&amp;#8221;空间获得了可持续性和成长性。蜜蜂的这种获利模式是一种远比曼德维尔的寓言深刻的隐喻。&lt;/P&gt;
&lt;P&gt;　　二、蝴蝶型企业：对环境有回报但自身的成长性和影响力小的企业；&lt;/P&gt;
&lt;P&gt;　　三、毛毛虫企业：对环境有损害但自身的成长性和影响力小的企业；&lt;/P&gt;
&lt;P&gt;　　四、蝗虫型企业：破坏环境且由于其成长性和影响力大而对社会和环境有巨大破坏性的企业。（见图一：企业的四种类型）&lt;/P&gt;
&lt;P&gt;　　不言而喻，只有蜜蜂型企业才是能做到三重盈余的企业公民。&lt;/P&gt;
&lt;P&gt;　　企业的利益相关方，除了三重盈余对应的三个&amp;#8220;股东&amp;#8221;外，还有客户、员工和合作伙伴（包括供应商）。它寻求所有这六个利益相关方（&amp;#8220;持股人&amp;#8221;）的平衡。企业是股东的，也是员工的，是社会的也是自然环境的&amp;#8230;&amp;#8230;公民行为体现为六个&amp;#8220;善待&amp;#8221;：一、善待股东；二、善待员工；三、善待客户；四、善待环境和资源；五、善待合作伙伴（供应商）；六、善待整个社会。企业公民行为就呈现为一个六边形，这正好是一个蜂巢的形状。（见图二：企业公民行为的六个利益相关方）&lt;/P&gt;
&lt;P&gt;　　这是一个与曼德维尔的&amp;#8220;寓言&amp;#8221;大异其趣的关于企业公民的&amp;#8220;蜜蜂的寓言&amp;#8221;。&lt;/P&gt;&lt;img src ="http://blog.vckbase.com/bastet/aggbug/35535.html" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Diviner</dc:creator><title>未来3-5年中国经济走势初探（来自天涯 作者：poseidonnep）</title><link>http://blog.vckbase.com/bastet/archive/2008/10/13/35294.html</link><pubDate>Mon, 13 Oct 2008 09:33:00 GMT</pubDate><guid>http://blog.vckbase.com/bastet/archive/2008/10/13/35294.html</guid><wfw:comment>http://blog.vckbase.com/bastet/comments/35294.html</wfw:comment><comments>http://blog.vckbase.com/bastet/archive/2008/10/13/35294.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://blog.vckbase.com/bastet/comments/commentRss/35294.html</wfw:commentRss><trackback:ping>http://blog.vckbase.com/bastet/services/trackbacks/35294.html</trackback:ping><description>　　第一部分 经济发展的实质&lt;BR&gt;　　第二部分 货币的本质和中国通货膨胀的前景&lt;BR&gt;　　第三部分 2008-2010年世界经济发展的基本判断&lt;BR&gt;　　第四部分 未来3-5年中国经济的走势&lt;BR&gt;　　第五部分 我们的对策&lt;BR&gt;　　&lt;BR&gt;　　本人潜伏论坛多年，不敢放浪形骸，亦不吝言辞，敏于思而慎于言，紧于收集数据而疏于立论。今次放口一言，仅供众位参考。&lt;BR&gt;　　说明：因本人是CFA charterholder， 为了遵守CFA协会关于伦理和职业操守的需要，避免利益冲突，公布本人持有的有关投资资产。本人拥有部分1000股招金矿业股票，1500股华资实业股票，10手执行价为675到期日为2008年2月11日的黄金期权，在北京住房一套，还有房贷余额约35万。&lt;BR&gt;　　&lt;BR&gt;　　第一部分 经济发展的实质&lt;BR&gt;　　&lt;BR&gt;　　在大学学过西方经济学的朋友都知道，经济发展的实质是要素的投入和生产效率的提高。经典经济学认为：要素关键是资本、劳动力和企业家精神，生产效率的提高主要依赖科学技术、管理制度和企业家精神。宏观经济学认为GDP=消费+投资+政府支出+净出口（出口-进口）。我们从这些基本原理出发来看中国改革开放以来经济发展的主要推动力。&lt;BR&gt;&lt;BR&gt;　　一、各类要素持续流入经济体。排在第一位的当然是外资的大量流入，带来了巨额资本持续流入和技术以及先进的生产管理经验（改革开放的实质是先开放后改革，改革进行不下去的时候再推动进一步开放）；建国以来的低消费高积累沉淀的大量国有资产和集体资产，改革开放以后逐步在市场经济的带动下显现价值；长期的高储蓄产生了大量的社会剩余资本，这些资本通过银行贷款以储蓄总额70%左右总比例进入投资领域；农业生产效率的提高和农业的部分集中化带来了大量农村劳动力的解放（8亿农民中除了老弱病残孕之外的劳动力在理论上都可以离开土地到城市和工厂打工；每年春运铁道部公布的流动人口数据大约是1.5亿，我想这个数据大约就是从农村到城市打工者总数的大部分，还有一部分在小范围内流动，可以通过汽车实现人员流动，这个数据应该也不会太小，只不过统计比较困难）；每年通过高考和上大学有大量的年轻劳动力进入各类城市；民营经济从无到有，成为经济发展中的一大亮点，不管是坑蒙拐骗做假货还是自我积累搞集资，民营经济的茁壮发展有目共睹；土地价值逐步显现，各级地方政府通过土地财政收刮了大量经济资源，另外政府还通过税收和行政收费等手段攫取的大量政府收入，投入到形象工程、政府控制的公共事业、公款消费等政府支出项目（形象工程也是经济发展的一种表现，只不过是投入产出比是负数的投资而已）；改革开放以来，经济从短缺经济逐步进入过剩经济，人民大众随着收入的提高消费能力逐步提高，从满足衣食住行等低级需求逐步到文化娱乐休闲保健等高级需求，恩格尔系数逐步从70-80%降低到30-40%。&lt;BR&gt;&lt;BR&gt;　　二、生产效率的提高。经济发展的另外一个重要的动力是生产效率的提高。我想这几年国内生产效率的提高是不言而喻的，西方国家几百年的技术革命，我们现在要用几十年内走完，生产效率是日新月异的。因为生产效率的提高速度大大高于劳动工资的提高速度，这是国内投资回报率高的主要原因之一。今天的资本家不象两三百年前的资本家，赤裸裸地利用延长劳动时间和加大劳动强度来提高剥削的效率，但资本家终归不是慈善家，剥削工人和剩余劳动力是疯狂的，也是很隐蔽的，目前通过提高单位劳动时间的劳动效率和降低劳动工资来加强剥削是最常见的手段。当然，山西黑砖窑现象的出现也说明现代中国野蛮的剥削也是很有市场的。劳动效率提高的另外一个表现是劳动者素质的提高，这几年随着劳动人口素质提高和经验的积累，熟练劳动力的实际技术能力的提高也是相当可观的。&lt;BR&gt;　　制度改革也促进了生产效率的提高。改革开放以来，中国为了搞活国有企业大约走过了这么几个历程，从国营企业（其实从国营企业到国有企业的称谓的变化也体现了改革的进程）到承包，到股份制改革，到国有企业破产国有经济收缩，再到最近几年的国有企业在自然垄断行业、公用事业行业和关键行业（例如金融）扩张。国有经济从全面开花到强调重点发展，为民营经济和外资经济的发展的提供了舞台，民营经济和外资经济的高效率组织方式大大提高了生产效率。国有经济的股份制改革也在一定程度上提高了国有经济的竞争力，这也提高了经济发展的效率。另外由于国家对资金、土地、人才、外汇的管制逐步放松，大大提高了要素的流动和配置效率，这些当然也提高了生产效率。&lt;BR&gt;&lt;BR&gt;　　三、居民消费能力的提高和出口扩大，带动了投资增长，GDP增长的三架马车全面启动。在改革开放以前，我们是短缺经济，只要你能生产出有用的东西，就有人来买。所以从1978年-1994年我们一直在经历短缺经济，有钱没处花，你买不到东西。当时有一句话，改革开放初期，到处是黄金，只要你愿意弯下腰，就能富起来。这是短缺经济的典型现象。但是到1996年以后，经济形势发生了大的变化，当时有一种时髦的说法：中国经济从卖方经济到了买方经济，实际上经济慢慢发展到了过剩经济。1997-2001年经济发展困难是比较明显的，特别是国有企业大面积亏损，通货紧缩，居民消费不振，因为全球经济的疲弱和亚洲金融危机导致出口压力较大，这一切对当时的中国总理的压力非常大。&lt;BR&gt;　　为了刺激经济发展，走出困境当时的总理朱老板开出了这几份方子：1、老百姓不是有大约8万亿的存款不是不愿意花吗，我就搞义务教育不义务非义务教育大范围收费和扩招，住房改革搞货币化分房，医疗改革废除公费医疗，废除原来的养老退休机制搞政府亏空养老。这几招招招见血，打在了所有老百姓得要害上，逼着老百姓消费，为过剩经济提供购买力和经济发展的新增长点。2、针对富裕个人，大力推进汽车产业发展，加快消费升级换代。3、为了维护大国形象，人民币虽然没有贬值，但是提出了出口退税政策已实现实际汇率的贬值，大力推动出口创汇。果然几年下来，这些政策大有斩获，可怜的中国老百姓背上了新三座大山，住房、医疗、教育，把辛苦几十年的积蓄乖乖贡献给了不良开发商、各级政府、贪官污吏、外资老板、炒房团、医生、医药代表、校长和老师等等，而且我们的年轻人为了住房背上了一辈子的债务，还面临一个深渊，那就是养老金问题（后文将会有详细叙述）。居民房地产和汽车消费，教育和医疗消费，提升了GDP三架马车中的消费；房地产业和汽车产业的大发展带动了相关产业的发展，加上出口产业的膨胀有力提升了投资发展，GDP的第二架马车也开始狂奔了；至于第三架马车，出口的发展那就不在话下了，出口退税政策加上我们的低廉劳动力果然大大刺激了出口发展，外汇储备连创新高，中国一举成为国际贸易大国，今年很有可能超过德国称为第一大贸易顺差国和超过美国成为第二大出口国；中国现在已经是世界工厂，第一大外汇储备国。&lt;BR&gt;　　&lt;BR&gt;　　第二部分 货币的本质和中国通货膨胀的前景&lt;BR&gt;　　我在这里之所以要单独阐述货币的本质是因为，中国目前出现了严重的通货膨胀和通货膨胀预期，而对通货膨胀的认识直接关系到对下一阶段的经济发展走势的判断。&lt;BR&gt;　　货币的本质是交换的等价物，这一条我想不会有人反对。有人会说货币是财富的象征，但为什么货币能够成为财富，那是因为我们都认为货币能够换到物资，如果一个财主积累了大量老版的第一套或第二套人民币现钞，我们会认为他拥有财富吗？不会，因为他手里的人民币是不能流通的，不能通过交换得到物资。&lt;BR&gt;　　其实，我们现在用的货币还有更重要的一个本质，那就是信用，对发行人的信用。因为现在世界上已经不存在一种货币是和金银或者石油等现实财富挂钩的，我们现在用的都是法定货币，简称法币。法币不和任何实物资产挂钩，实际上就是空头支票。法币是由中央银行发行的，中国的货币人民币是由中国人民银行发行的。问题是人民银行是基于什么发行人民币的呢？答案是理论上人民银行想发多少都可以，因为没有实物资产限制人民银行发行货币的规模。在中国，人民银行是国务院的机关，我们认为是由党中央国务院负责货币发行的规模。&lt;BR&gt;　　 老百姓愿意接受人民币，使用人民币，愿意拿自己的粮食等物资换成花花绿绿的钞票是因为我们相信我们能够用这些花花绿绿的钞票换取其他等价的我们需要的物资。这里我要加上等价，是因为这直接关系到货币内在价值。如果人民币以一种可以预测的速度贬值（通货膨胀），我想老百姓在接受人民币的时候会打折扣的。因为我们相信政府不会用滥发货币损害老百姓的利益，所以我们接受了人民币。但是这种信用在历史上是出过问题的，最典型的是1989年通货膨胀和1994年通货膨胀。1989年的时候我还很小，当时我们家正在造房子。我对通货膨胀的印象是，有一个建材经销商对我爸爸说，现在建材一天一个价，让我爸爸赶紧买。你想想，一天一个价，通胀是个什么概念。1994年的通胀，很多人都有感觉，因为老百姓好像和钱有仇似的，到商场不管东西好坏，直接就抢购，就是要把钱以最快的速度花出去，在这个现象之下是全国性的通货膨胀。当时官方公布的CPI数据是增长12%，而有学者计算应该是25%左右。我相信应该比12%高，因为当时人民银行把存款利息提高到了12%左右。&lt;BR&gt;　　那么为什么会出现1989年和1994年这两次大范围的通货膨胀呢？原因比较多，我分析来看，1989年那次通货膨胀的主要原因之一是“价格闯关”， 短缺经济的实质是老百姓积累了大量的货币却没有东西可以买，所以当物价放开的时候，历史累积的货币购买力扑向市场很容易形成通货膨胀。1994年的通货膨胀原因就比较简单了，那就是中央银行发行了太多的货币。1989年动乱之后，世界上对中国经济的封锁和改革的停滞，经济发展出现了停滞，为了刺激经济发展，1992年邓小平发表了著名的南巡讲话，打开了思路，搞活了经济，出现了全民经商热潮。中央国务院各机构、各级政府、各类企业纷纷大搞三产，出现了第一次工资翻番等。这些机构办公司的钱要么从财政拿钱，要么从银行拿钱。这就导致了中央银行货币发行过多，信贷扩张过快。出现了全国性的经济过热和海南、北海等地房地产热。到1994年通货膨胀到了顶点。之后通过大幅度加息和鼓励存款，终于在1996/97年实现了所谓的经济软着落。但这次经济泡沫式增长主要后果之一是国有银行出现了巨额坏账，出现了所谓四大银行技术性破产一说。那么，当时，银行的坏账率到底有多高呢？我们以中国银行为例，因为中国银行是国有大银行里第一家公布不良率的银行，也是年报披露较为充分的一家。根据中国银行历年年报的数据，1998年以前发放的贷款不良率高达50%以上。而我们知道在2004年以前，中国银行一直是四大国有银行里效益最好的一家银行，可以想象当时国有银行不良率有多高。（关于国有银行的不良率下文会有更详细的叙述。）另外，为了保护社会稳定，人民银行借出再贷款，拯救了一批中小金融机构，所以那次危机给中央银行直接留下了大约1500亿左右的坏账。&lt;BR&gt;　　 从这些事实来看，我们发现通胀的实质其实是货币问题，而不是什么需求太旺什么的。货币发出来之后，会有两种结果，一是不进入流通领域，被人们当作财富储存起来（例如财主压在床底下，封在墙壁里阿什么的）；只要不进入流通领域，其实对实体经济是不会有太大的影响的。中央银行最喜欢这种土财主了，因为这些货币不进入流通领域，央行就可以再多发一些货币而不引起通胀。1989年那次通胀主要就是因为老百姓压在家里的货币集中冲向流通领域导致的通胀。另外一种是进入流通领域，这就是直接增加了流通领域的货币存量，超过经济实际需要发行货币很快会形成通胀。1994年的通胀就是因为银行的信贷扩张过快出现了流通中的货币增长量远远高于实际经济需求，出现了恶性通胀。&lt;BR&gt;　　 我认为未来2-3年中国会出现严重的通胀，原因很简单，就是中央银行发行了太多的货币。具体分析如下。&lt;BR&gt;&lt;BR&gt;　　 1、不断增加的外汇储备被动投放了大量基础货币。大家都知道，我们是一个外汇管制国家，按规定企业在外管局核定的外汇保留额度之上的外汇必须卖给国家，企业需要用汇必须向国家购买（外汇限额这个政策最近刚刚被废除，企业可以想保留多少就保留多少）；对个人的外汇管理相对较松，个人可以保留外汇存款，但在2006年以前，个人使用外汇必须向银行提供外汇使用证明材料。我们知道中国现在已经是全球第一大外汇储备国，截止到2007年6月30日，外汇储备已经高达13326亿美元（国家外汇管理局公布的数据）。我简单分析了一下近几年外汇储备的增加量，有如下发现：1996年-2000年的增长比较平稳，从1996年的1050亿美元增加到2000年的1650亿美元，年均增长9.46%。从2000年1650亿美元到2007年6月30日13326亿美元，年均增加37.90%。那么这几年共有13326-1650=11676亿美元进入储备，按照平均8.0的汇率相当于直接投放了93408亿人民币，目前这个数字还在按照每个月300-400亿美元左右的规模增加。按照人民银行网站公布的数据，2000年底货币发行15938亿人民币，储备货币36941亿人民币，到2007年6月30日，货币发行为29240亿人民币，储备货币82663亿人民币。货币发行年均增长9.79%，储备货币年均增长13.19%。虽然名义货币发行量与经济增长（GDP增长）是相适应的，但是由于外汇储备的过快增长，其实实际货币发行增长量可能高达20%左右。当然人民银行一直在用发行央票的办法回笼货币，到2007年6月30日央行发行债券37581亿元，但比起总量近10万亿外汇占款投放的货币来说还是太少了。（这里的“储备货币”理论上与基础货币是同一概念，包括中国人民银行所发行的货币、各金融机构在人民银行的准备金存款，邮政储蓄存款和机关团体存款。）&lt;BR&gt;&lt;BR&gt;　　 2、为了改革金融系统，央行实际投放了大量了基础货币。2003年12月30日，中央汇金公司正式向中国银行和建设银行各注资225亿美元，拉开了新一轮银行改革。这两家银行拿了450亿美元以后转手向国家结汇，等于人民银行又把450亿美元拿回来了，这就是相当于直接投放了450*8=3600亿人民币的基础货币。这对两家银行来说还没有完，为了处理这两家银行的不良资产（次级和损失类贷款），四大资产管理公司从两家银行购买了本金大约1289亿（建设银行）+1500亿（中国银行）=2789亿不良资产，央行按照贷款本金50%发行专项票据约1400亿协助银行处理不良资产；这实际上也是货币投放，尽管这些票据会在2007年-2008年到期。其实这还没有完，央行发行票据210亿元偿付建设银行因托管一家信托投资公司产生的代垫款项，央行发行181亿票据置换中国银行的一些特殊资产。这样央行为了帮助这两家银行共支付了5391亿，相当于间接投放了这么多货币，而中国银行和建设银行是公认的资产质量比较好，盈利能力较强的两家国有银行。&lt;BR&gt;　　我们再来看工商银行的改革。首先是注资150亿美元，剥离了2460亿元损失类资产，划转总额4590亿元可疑类贷款。按照刚才的计算公式，注资相当于投放150*8=1200亿，处理不良贷款共发行专项票据4348亿元，票据到期日在2010年（数据来自工商银行2006年年报）。这样央行为工商银行买单5548亿。这个数字超过了中国银行和建设银行两家的成本。我们再来看农业银行，农业银行是四大银行里面资产质量最差，历史包裹最重的一家，因为其改革还没有完成，很多数据没有公布，我们只能估算。据报道，农业银行向国务院提交的股改报告中要求注资1000亿美元，我们就按此数据计算，1000*8=8000亿人民币，我相信这个数据只少不多。这样为了四大银行改革央行实际发行了5391+5548+8000=18939亿人民币。这还没有完呢，为了推动城市商业银行和农村信用社改革，央行开出了大约1000亿的专项票据，还有在证券行业最困难的时期买单了大量券商因挪用客户保证金而出现的窟窿，我估计大约有500亿左右。综上所述，为了国家的金融改革，央行实际上大概发行了约2万亿的基础货币。&lt;BR&gt;　　当然有朋友会说央行买单时主要采用了不可转让的专项票据，银行只能持有到期，不会真的象基础货币那样直接进入流通领域，另外注资的美元也是逐步结汇成人民币的，而且结汇之后也是要求银行用货币掉期的形式让银行继续持有美元。但是我们要知道，专项票据是会逐步到期的，货币掉期也不可能永远做下去；更重要的是，给银行注资，直接增加了银行的资本。银行资本增加就可以多放贷款，加上货币的乘数效应，实际上就是相当于发行基础货币。&lt;BR&gt;&lt;BR&gt;　　三、贷款的迅速增加。虽然贷款不是直接基础货币投放，但是我们知道货币有一个乘数效应，贷款的增加量相当于乘数的效应有多大。我们来看几个简单的数据。从1999年12月31日到2007年6月30日，所有金融机构的本外币各项贷款从93734亿增长到264899亿，年均增长约17.33%。而同期国内生产总值（GDP）从2000年底98000亿元，增加到2007年6月30日的106768。我们假定下半年的经济增长速度与上半年相同，这样到2007年底GDP总额应为213536亿元，年均增长约11.77%。也就是说我们的资本投入速度远远高于经济产出效率，相差5.56%。这样的经济增长方式注定会出现货币投放太多的问题。&lt;BR&gt;&lt;BR&gt;　　 四、2005年以来的股市火爆引发了上市公司融资热潮，债券市场规模也许迅速扩大。2005年全年股票市场筹资总额1882.51亿元，到2006年增加到了5594.29亿元，到2007年6月30日半年筹资总额为2526.30亿元，全年预计至少可达5052亿元。股市为经济体注入了大量的资本。公司债券市场从小到大，产品从少到多，短期融资券，公司债券等品种逐步增加，融资量也大幅上升。短期融资券从无到有，发行量迅速上升，2005年发行总量1392亿元，2006年发行总量2919亿，2007年上半年发行总量1547.8亿元。企业债券市场发行量也在迅速增加。&lt;BR&gt;&lt;BR&gt;　　 从以上数据来看，我们未来的货币供应量上升速度很明显，通货膨胀压力越来越明显，其实从目前的实际情况来看，严重的通胀膨胀已经露出了苗头，通胀预期已经逐步形成。今年以来，以食品为代表的价格正在疯狂上涨。上半年的CPI涨幅为3.2%，粮价上涨6.4%，蛋上涨27.9%，肉禽及其制品上涨20.7%；除此之外，上半年的房价也仍在加速疯涨。&lt;BR&gt;　　前段时间有关官员说，目前的通胀主要集中在食品领域，通胀还处于可控范围，不会蔓延到其他领域。但是市场的现实说明通胀已经蔓延到了服务行业。近来，国内多处著名景点吹起的加价风则表明，服务业的价格上涨已经开始了！峨眉山、武夷山、五台山等景区的门票或车费，近日相继涨价，涨幅普遍由二成多至五成不等，其中河南洛阳的龙门石窟最离谱，拟把旺季门票加至160元人民币，加幅高达一倍。而涨价并非季节性，而是长期定价。据黄山风景区人员透露，200元的门票未变，但游客必用的登山小车，因油价上涨，车费由10元加至13元，加幅达三成。各景区的加价事小，但这却是服务业价格上涨的一种表现。&lt;BR&gt;　　8月16日，中国青年报社会调查中心与腾讯网新闻中心联合开展一项调查。这项不到24小时即有14267人参与的调查显示，今年入夏以来，94.9%的人在生活上的支出增加了。其中，增加幅度在100元以下的为12.1%，100－200元的为24.3%，200－400元的为33.8%，400－600元的为14.0%，600元以上的为10.7%。受涨价影响，支出增加了，生活质量却下降了。调查显示，79.3%的人认为入夏以来自己的饮食质量下降了，47.0%的人认为“下降了一点”，32.3%的人认为“下降很多”。调查显示，对于这一轮涨价，86.3%的人认为，受影响最大的是低收入者或中低收入者。并且，公众对涨价的预期仍在继续。在本次调查中，75.1%的人预计，到今年年底，物价“仍会涨”，21.8%的人认为会“跟现在差不多”，认为“会跌回到原来水平”的仅占3.1%。各方信息综合来看，低收入阶层的生活质量下降程度最大，目前不得不节衣缩食，面对飞涨的食品价格只得死扛。&lt;BR&gt;　　低收入阶层日子难过，中产阶层如何？日前，中华英才网以“你的工资涨了吗”为主题对当前职场进行调查，涉及京津沪、珠江三角洲、东南沿海地区、东北地区、西部和中部地区总计1050名职场人士，覆盖IT、金融、事业单位、非盈利机构等工作领域。调查显示从整体上看，工资涨幅在5%以下的人占到总数的65%。对于目前的收入涨幅，有93%的人感到不满意，45%的人选择“常因房价压力争取加薪”，55%的人感觉“房价上涨过快，不寄希望于加薪”。在城市中产阶层的开支结构中，食品权重较少，但居住类支出却很高，飞涨的房价和房租让这些白领阶层现在几乎陷入绝望境地。&lt;BR&gt;　　半年来储蓄资金不断分流到股市、楼市以及黄金等增值保值，就是通胀预期的表现之一。目前政府期望着秋粮丰收，会让现在高企的食品价格降下来，但通胀预期下，农民在丰收后会采取囤粮惜售的做法以对抗通胀，未来形势将让这些官员大失所望。更糟糕的是，目前实际利率为负，这将催化而非抑制全面通胀预期的形成，因为实际负利率首先剥夺的就是债权人利益，这将逼迫人们不得不抛售钞票，收购实际资产和商品。实际负利率将使官方所有平抑物价的努力落空。&lt;BR&gt;　　目前，政府希望通过价格控制和价格干预来压制通货膨胀。这种努力注定是要失败。我们知道价格控制是一种早就被证明是无效的价格管理手段。生产厂商在成本价格不断攀升的前提，如果政府压着不让提价，他们肯定会通过降低产品数量和质量的办法呀低成本，实际上还是在提价。&lt;BR&gt;　　举个例子，8月16日，国家发改委的一纸通报，将世界方便面协会中国分会置于前所未有的尴尬中——发改委正式认定该协会和相关企业“相互串通、操纵市场价格”，并且责令其立即改正错误，向社会公开作出正面说明。我认为这是属于典型的柿子挑软的捏。发改委那帮官老爷们紧紧搂着项目审批大权和物价审批大权，作威作福。方便面市场是一个充分竞争的市场，充分竞争市场的特点是各家生产厂商费尽心机降低成本，如果为了利润盲目提高价格无疑自绝于人民。因为充分竞争市场基本没有准入门槛，只要有超额利润很快会有新的厂商进来，竞争一来，很快得降价。那个挑头涨价的很快会被市场竞争抛下。我们的发改委为了讨好中央，显示自己的权威，糊弄老百姓装出控制物价的鬼脸，拿方便面开刀，简直瞎扯。其实发改委的做法只能迫使企业改变提价的程序，并不能改变提价的事实。目前部分品牌方便面的零售价仍坚持涨价后的价位。康师傅袋装方便面的价格标签被改为“1.90元”。康师傅碗装方便面价格调至“2.7元”。销售人员说，近日，两种产品的价格分别上调了0.2元，而且目前没有接到降价通知。这已经证明了发改委失败。&lt;BR&gt;　　我预计通胀预期将在明年全面形成，经济生产高峰也随之出现。现在诸多证据表明，这个判断是正确的，全面通胀预期正在悄然孕育，很可能到明年全面爆发。广大朋友十分关心的房价会不会再涨，我想我的回答会很让人失望。房价还会疯涨，直到国家出台严厉的管制措施，例如房产转让收益100%征收所得税，开征物业税等。那么会不会导致不可收拾的局面，要看现在政策部门的决策是否果断，特别是央行的利率政策和汇率政策。&lt;BR&gt;第三部分 2008-2010年世界经济发展的基本判断&lt;BR&gt;　　我对世界经济未来3-5年的判断是比较悲观的，因为现在全球商品的价格到了一个新的历史高度开始缓慢向下，这是经济已经见顶的最好信号。从图形来看，黄金、白银、铜、铝、原油、大豆等主要商品价格都呈现了到达历史高点下拐的图形特点。这种图形的趋势是我们[判断全球经济的最好指标。&lt;BR&gt;　　另外，全球房地产价格也已经到了一个新的高点。美国、欧洲、澳大利亚、印度、新西兰、中国等主要经济体房地产价格已经多年连续上涨。有消息说英国伦敦许多家庭为了扩大居住空间不得不挖地下室，因为买不起新的房子。而在中国和印度房地产市场暴涨已经不是什么新闻了，所谓只有更高没有最高。房地产泡沫不断膨胀说明了一个问题，就是全球性的资产价格增长反映了全球经济的景气。但这种景气目前来看应该快要到头了。&lt;BR&gt;　　首先，各国央行为了控制不断抬头的通货膨胀纷纷加息。美国的联邦基金隔夜拆借利率已经从历史低点2.0%上升到了5.25%。日本央行已把隔夜拆借利率从0提高到了0.5%，欧洲央行把利率提高到了4.25%，英国央行因为国内房地产价格暴涨从2006年8月开始连续五次加息，把英镑基准利率提高到了5.75%，同样也是为了控制房地产泡沫澳大利亚央行从2006年5月开始连续三次加息，目前基准利率已经达到6.25%，加拿大央行把基准利率提高到了4.5%，新西兰官方指导利率为8.25%，中国金融机构一年期存款利率3.33%，一年期贷款利率6.84%。利率上升有力地压制了通胀抬头，也对房地产市场压力不断加大，市场流动性开始抽紧。特别是美联储的利率政策，很好地控制了美国的通胀上扬势头，同时也很快对房地产市场产生了较大的影响。&lt;BR&gt;　　今年开始，美国的次级房地产问题开始出现。所谓次级贷款是美国信用评分在600分以下的个人申请的房地产贷款。房地产贷款公司贷款发放给个人后，转手卖给各家投行，各家投行通过打包证券化，让评级公司提供一个好的评级卖给各家投资机构，包括世界各国商业银行、保险公司、对冲基金、养老基金等机构。由于发放贷款的公司完全不考虑哪些资信不好个人的还款能力，搞什么利滚本等金融创新，导致次级房地产贷款出现了严重的违约。次级贷款问题开始露出水面，目前已有几家美国房地产贷款公司申请破产保护，最大的一家房地产贷款公司countrywide的评级也被降低。第五大投行BEAR STEARNS旗下的两只对冲基金因为投资次级债出现了严重亏损。近期的次按市场危机导致全球著名投资银行高盛旗下多只对冲基金损失惨重，其中GEO对冲基金本月价值损失幅度达28%，甚至被威胁要求其退市。为了吸引外部投资者，高盛不得不在收费条件方面让步。而在8月13日）高盛已宣布将20亿美元的自有资金投入GEO基金，用以缓解目前出现的困难。&lt;BR&gt;　　同时，次级贷款引发的风险开始在世界范围内蔓延，欧洲最大银行巴黎银行旗下三支基金因为投资次级债出现严重流动性困难；危机蔓延到加拿大，8月15日，加拿大最大的非银行资产支持商业票据发行机构Coventree表示，由于信贷恐慌，该机构已无法偿还到期的债券，被迫融入资金以应付突发的财务状况。加拿大的主要评级机构DBRS称，Coventree并非加拿大唯一一家可能出现违约的ABCP发行机构。在总规模1160亿加元的加拿大商业票据市场上，有17家ABCP发行机构在寻找资金，这17家机构发行的未兑现ABC P总额达266亿加元，几乎占整个市场规模的1/4。如果这些机构不能及时找到融资，有可能出现违约，这就势必会进一步引发对信贷短缺的担忧，并有可能引发新一轮的金融危机。&lt;BR&gt;　　为了应对可能发生的金融危机，世界各国央行开闸放水，为金融体系注入流动性。据来自路透社的统计显示，世界各地央行从8月9日到10日的48小时内注资总额，已超过3262亿美元。其中美联储在10日连续三次注资，总额达380亿美元。9日，美联储已向金融市场注入了240亿美元资金。两天注入资金相加达到620亿美元。欧洲央行则在9日创纪录地向欧元区银行系统注资948亿欧元（约合1299亿美元）。10日，欧洲央行再次宣布注资610.5亿欧元（约合836.4亿美元）。&lt;BR&gt;　　尽管美联储与世界各大央行不断向金融市场注入巨资，以尽量减少由此给世界资本市场带来的不利影响，但目前看来这一措施并没有达到预期的效果。世界各主要股市在上周继续大幅下调，引起投资者恐慌。投资者为了免于受害，纷纷卖出股票，卖掉外币，转投被认为是资金安全港的美国国债。导致美国收益率直线下降，价格迅速上升。10年期美国国债收益率震荡走低，目前大约在4.60%左右。估计随着美联储降息进行可能会进一步降低。其实美联储已经开始在降息了，就在几天前，美联储大幅降低了联邦贴现利率，实际上是一种变相的降息。&lt;BR&gt;　　但是美国楼市持续疲弱。美国地产经纪商协会8月15日表示，美国1/3大城市第二季度住屋价格下跌。在149个城市地区中，50个城市的独立家庭房屋价格中位数下跌，全国41个州及首都哥伦比亚特区的整体楼价亦报跌。第二季房屋销售以年率计由去年的663万间，下跌至591万间，跌幅达10.8%；第二季房屋价格中位数由去年同期的227100美元，跌至223800美元，跌幅1.5%。而据财经知名人士曹仁超称，即将公布的8月份住宅市场指数，相信可进一步确认美国楼市进入1989至1991年式的衰退。上一次是1989年10月，上述指数跌至48点（低于50点代表市场十分差），1990年1月更跌至20点，到1992年10月才重返54点，前后共3年。1990年第四季美国GDP下降3%，1991年第一季GDP下降2%，连续两季GDP负增长，可以确认为衰退。此轮住宅市场指数最高是2005年6月72点，去年5月首次低于50点，见46点，今年7月是24点，估计8月份可能低于24点，代表美国楼市进入回落期已超过一年。&lt;BR&gt;　　由于美国家庭的房地产投资和股票投资占家庭资产的比重很高，随着房地产市场泡沫破裂和股票市场不景气，美国消费者信心指数（密执安大学消费者信心指数）开始下降，从2000年初的110左右的高点下降到目前85左右。美国经济唯一的一根救命稻草是失业率一直维持历史低点，通胀指数还在可接受范围内。这也是目前市场期盼美联储降息救市的基础。但是随着次级贷款问题的蔓延到公司债券市场，信用点差不断扩大，公司融资成本上升，公司利润增长开始下降，我估计很快会出现失业率上升问题。同时由于大量资金进入美国，美国的通胀压力可能正在抬头。其中有一个重要因素是中国生产的商品开始涨价。到那个时候美联储就会处于降息和降息的夹缝中，有可能出现所谓的滞胀问题。当然，目前判断出现全球性的经济危机还为时过早。但是随着全球利率上升带来的是资金成本提高，作为经济大国美国借债消费的美好时光已经过去，美国人不得不压缩开支，美国消费者的行为是世界经济的主要动力。这个火车头一开始减速，很快会出现连锁反应。全球性的经济不景气近在眼前了。&lt;BR&gt;　　我们再来简单看一下欧洲的情况，欧洲经济走出困难其实没有多久，欧洲元区失业率在2004年年中达到了8.7%左右的高峰开始下降到2007年6月30日大概在6.8%左右。GDP从2000年4.5%左右的年增长到目前大概在2.5%左右。核心物价指数从2002年一季度2.6%高点回落到目前1.9%左右的水平（这应该是欧洲央行加息的主要结果）。我们发现欧洲人没有过上象美国人那样的长达十年左右的幸福生活，所以欧元区的经济还是比较脆弱的。如果这次次级贷款危机拖累欧元区的话，很快会出现欧洲经济的不景气。&lt;BR&gt;　　日本经济2005年确定刚刚走出通货紧缩的阴影，但是目前的经济增长力度并不是特别强劲。多个经济指标出现了互相矛盾的经济前景。所以我们并不能指望日本经济能够像80年代拉动世界经济增长。&lt;BR&gt;　　 综上，我认为世界经济可能在未来2-3年出现如下轨迹：随着次级贷款问题的逐步恶化，各国央行在基于通胀和失业率不高的基础上通过降低利率挽救金融市场和经济发展信心，经济可能会出现短时期的回暖。但是很快出现的通货膨胀压力又不得不使央行加息，收缩货币发行量，全球经济至此进入为期至少2-3年的经济萧条期。&lt;BR&gt;　　情况估计更糟糕一点，由于格林斯潘时代的美联储低利率政策向全世界释放了大量的美元，看看亚洲各国中央银行的外汇储备数据和OPEC国家的石油美元就知道全世界有多少美元在寻找投资机会了，加上美国从政府到个人的赤字消费和美国在全世界到处耀武扬威的巨额开销，美国人很可能会采用印钞票来从全世界抢钱，以维持其世界霸权地位，当然这种做法是饮鸩止渴的办法。一旦全世界人民手中的美元回流美国，要求美国人兑付手中的美元时，美国人将为他们曾经享受过的全球铸币税付出沉重代价，美元的信用一落千丈，美国的通胀持续上升。当投资者意识到他们的手中的美元存在严重贬值的压力时候，会纷纷抛出美元，寻找资金的安全港——黄金和石油。美元有可能沦落到于欧元和日元相当的地位，各国的外汇储备不再以美元为绝对主导，而是由美元、欧元、日元、人民币等多种货币主导。美国经济的严重衰退导致世界经济进入象1929-1933年那样的世界性的经济危机，出现GDP负增长，失业率高达30%等等情况。&lt;BR&gt;　　当然，我假定的这种情况不一定出现，因为美国拥有世界上最先进的技术，最完善的制度、最强大的军队、全世界最优秀的人才纷纷移民到美国。但是我个人认为确实存在这样一种可能性。因为很多事实证明美国其实是一个无赖国家，首先美国一直在利用美元是世界货币和石油报价货币从全世界人民手中抢钱。看看这次次级债危机就知道，全世界的投资者（包括中国外管局和中国的大银行）在为美国穷人的房子买单，让美国人的住房拥有率从75%上升到83%左右。我相信终有一天这种滥用世界货币信用的报复会到来，美国会为它的贪婪和傲慢付出和当年大英帝国一样的代价，被新崛起的大国取代霸主的位置。&lt;img src ="http://blog.vckbase.com/bastet/aggbug/35294.html" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Diviner</dc:creator><title>dib段的一个简单例子</title><link>http://blog.vckbase.com/bastet/archive/2008/08/22/34736.html</link><pubDate>Fri, 22 Aug 2008 03:01:00 GMT</pubDate><guid>http://blog.vckbase.com/bastet/archive/2008/08/22/34736.html</guid><wfw:comment>http://blog.vckbase.com/bastet/comments/34736.html</wfw:comment><comments>http://blog.vckbase.com/bastet/archive/2008/08/22/34736.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blog.vckbase.com/bastet/comments/commentRss/34736.html</wfw:commentRss><trackback:ping>http://blog.vckbase.com/bastet/services/trackbacks/34736.html</trackback:ping><description>class CDib : public CObject&lt;BR&gt;{&lt;BR&gt;public:&lt;BR&gt;	CDib();&lt;BR&gt;	virtual ~CDib();&lt;BR&gt;&lt;BR&gt;    /**&lt;BR&gt;     * Clears all member variables and frees allocated memory.&lt;BR&gt;     */&lt;BR&gt;    void		DeleteObject();&lt;BR&gt;    /**&lt;BR&gt;     * Gets the number of bytes per horizontal line in the image.&lt;BR&gt;     * \param nWidth the width of the image&lt;BR&gt;     * \param nBitsPerPixel number of bits per pixel (color depth)&lt;BR&gt;     */&lt;BR&gt;    static int	BytesPerLine(int nWidth, int nBitsPerPixel);&lt;BR&gt;    /**&lt;BR&gt;     * Returns the height of the image in pixels&lt;BR&gt;     */&lt;BR&gt;    int			GetHeight() const { return m_BMinfo.bmiHeader.biHeight; } &lt;BR&gt;    /**&lt;BR&gt;     * Returns the width of the image in pixels&lt;BR&gt;     */&lt;BR&gt;    int			GetWidth() const { return m_BMinfo.bmiHeader.biWidth; }&lt;BR&gt;    /**&lt;BR&gt;     * Returns the size of the image in pixels&lt;BR&gt;     */&lt;BR&gt;    CSize		GetSize() const { return CSize(GetWidth(), GetHeight()); }&lt;BR&gt;    /**&lt;BR&gt;     * Returns the image byte field which can be used to work on.&lt;BR&gt;     */&lt;BR&gt;    LPVOID		GetDIBits() { return m_pBits; }&lt;BR&gt;	/**&lt;BR&gt;	 * Creates a DIB from a CPictureHolder object with the specified width and height.&lt;BR&gt;	 * \param pPicture the CPictureHolder object&lt;BR&gt;	 * \param iWidth the width of the resulting picture&lt;BR&gt;	 * \param iHeight the height of the resulting picture&lt;BR&gt;	 */&lt;BR&gt;	void		Create32BitFromPicture (CPictureHolder* pPicture, int iWidth, int iHeight);&lt;BR&gt;&lt;BR&gt;	/**&lt;BR&gt;	 * Returns a 32-bit RGB color&lt;BR&gt;	 */&lt;BR&gt;	static COLORREF	FixColorRef		(COLORREF clr);&lt;BR&gt;    /**&lt;BR&gt;     * Sets the created Bitmap-image (from Create32BitFromPicture) to the internal&lt;BR&gt;	 * member variables and fills in all required values for this class.&lt;BR&gt;     * \param lpBitmapInfo a pointer to a BITMAPINFO structure&lt;BR&gt;     * \param lpBits pointer to the image byte field&lt;BR&gt;     */&lt;BR&gt;    BOOL		SetBitmap(const LPBITMAPINFO lpBitmapInfo, const LPVOID lpBits);   &lt;BR&gt;&lt;BR&gt;public:&lt;BR&gt;    /**&lt;BR&gt;     * Draws the image on the specified device context at the specified point.&lt;BR&gt;	 * No stretching is done!&lt;BR&gt;     * \param pDC the device context to draw on&lt;BR&gt;     * \param ptDest the upper left corner to where the picture should be drawn to&lt;BR&gt;     */&lt;BR&gt;    BOOL		Draw(CDC* pDC, CPoint ptDest);&lt;BR&gt;&lt;BR&gt;protected:&lt;BR&gt;    HBITMAP		m_hBitmap;&lt;BR&gt;    BITMAPINFO  m_BMinfo;&lt;BR&gt;    VOID		*m_pBits;&lt;BR&gt;};&lt;BR&gt;&lt;BR&gt;CDib::CDib()&lt;BR&gt;{&lt;BR&gt;    m_hBitmap = NULL;&lt;BR&gt;    DeleteObject();&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;CDib::~CDib()&lt;BR&gt;{&lt;BR&gt;    DeleteObject();&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;int CDib::BytesPerLine(int nWidth, int nBitsPerPixel)&lt;BR&gt;{&lt;BR&gt;    int nBytesPerLine = nWidth * nBitsPerPixel;&lt;BR&gt;    nBytesPerLine = ( (nBytesPerLine + 31) &amp; (~31) ) / 8;&lt;BR&gt;    return nBytesPerLine;&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;void CDib::DeleteObject()&lt;BR&gt;{&lt;BR&gt;    m_pBits = NULL;&lt;BR&gt;    if (m_hBitmap)&lt;BR&gt;        ::DeleteObject(m_hBitmap);&lt;BR&gt;    m_hBitmap = NULL;&lt;BR&gt;&lt;BR&gt;    memset(&amp;m_BMinfo, 0, sizeof(m_BMinfo));&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;void CDib::Create32BitFromPicture (CPictureHolder* pPicture, int iWidth, int iHeight)&lt;BR&gt;{&lt;BR&gt;	CRect r;&lt;BR&gt;	CBitmap newBMP;&lt;BR&gt;	CWindowDC dc(NULL);&lt;BR&gt;	CDC tempDC;&lt;BR&gt;&lt;BR&gt;	tempDC.CreateCompatibleDC(&amp;dc);&lt;BR&gt;&lt;BR&gt;	newBMP.CreateDiscardableBitmap(&amp;dc,iWidth,iHeight);&lt;BR&gt;&lt;BR&gt;	CBitmap* pOldBitmap = tempDC.SelectObject(&amp;newBMP);&lt;BR&gt;&lt;BR&gt;	r.SetRect(0,0,iWidth,iHeight);&lt;BR&gt;	pPicture-&gt;Render(&amp;tempDC,r,r);&lt;BR&gt;&lt;BR&gt;	// Create a 32 bit bitmap&lt;BR&gt;	stdex::vector&lt;DWORD&gt; pBits(iWidth * iHeight);&lt;BR&gt;&lt;BR&gt;	BITMAPINFO bi;&lt;BR&gt;    bi.bmiHeader.biSize          = sizeof(BITMAPINFOHEADER);&lt;BR&gt;    bi.bmiHeader.biWidth         = iWidth; &lt;BR&gt;    bi.bmiHeader.biHeight        = iHeight; &lt;BR&gt;    bi.bmiHeader.biPlanes        = 1; &lt;BR&gt;    bi.bmiHeader.biBitCount      = 32; &lt;BR&gt;    bi.bmiHeader.biCompression   = BI_RGB; &lt;BR&gt;    bi.bmiHeader.biSizeImage     = 0; &lt;BR&gt;    bi.bmiHeader.biXPelsPerMeter = 0; &lt;BR&gt;    bi.bmiHeader.biYPelsPerMeter = 0; &lt;BR&gt;    bi.bmiHeader.biClrUsed       = 0; &lt;BR&gt;    bi.bmiHeader.biClrImportant  = 0; &lt;BR&gt;	&lt;BR&gt;	&lt;BR&gt;	SetBitmap(&amp;bi, pBits);&lt;BR&gt;&lt;BR&gt;	DWORD* pAr = (DWORD*)GetDIBits();&lt;BR&gt;&lt;BR&gt;	// Copy data into the 32 bit dib..&lt;BR&gt;	for(int i=0;i&lt;iHeight;i++)&lt;BR&gt;	{	&lt;BR&gt;		for(int j=0;j&lt;iWidth;j++)&lt;BR&gt;		{&lt;BR&gt;			pAr[(i*iWidth)+j] = FixColorRef(tempDC.GetPixel(j,i));&lt;BR&gt;		}&lt;BR&gt;	}&lt;BR&gt;&lt;BR&gt;	tempDC.SelectObject(pOldBitmap);&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;BOOL CDib::SetBitmap(const LPBITMAPINFO lpBitmapInfo, const LPVOID lpBits)&lt;BR&gt;{&lt;BR&gt;    DeleteObject();&lt;BR&gt;&lt;BR&gt;    if (!lpBitmapInfo || !lpBits)&lt;BR&gt;        return FALSE;&lt;BR&gt;&lt;BR&gt;    HDC hDC = NULL;&lt;BR&gt;&lt;BR&gt;    DWORD dwBitmapInfoSize = sizeof(BITMAPINFO);&lt;BR&gt;&lt;BR&gt;    memcpy(&amp;m_BMinfo, lpBitmapInfo, dwBitmapInfoSize);&lt;BR&gt;&lt;BR&gt;    hDC = ::GetDC(NULL);&lt;BR&gt;    if (!hDC) &lt;BR&gt;	{&lt;BR&gt;		DeleteObject();&lt;BR&gt;		return FALSE;&lt;BR&gt;	}&lt;BR&gt;&lt;BR&gt;    m_hBitmap = CreateDIBSection(hDC, &amp;m_BMinfo,&lt;BR&gt;                                    DIB_RGB_COLORS, &amp;m_pBits, NULL, 0);&lt;BR&gt;    ::ReleaseDC(NULL, hDC);&lt;BR&gt;    if (!m_hBitmap)&lt;BR&gt;	{&lt;BR&gt;		DeleteObject();&lt;BR&gt;		return FALSE;&lt;BR&gt;	}&lt;BR&gt;&lt;BR&gt;    DWORD dwImageSize = m_BMinfo.bmiHeader.biSizeImage;&lt;BR&gt;    if (dwImageSize == 0)&lt;BR&gt;    {&lt;BR&gt;        int nBytesPerLine = BytesPerLine(lpBitmapInfo-&gt;bmiHeader.biWidth, &lt;BR&gt;                                            lpBitmapInfo-&gt;bmiHeader.biBitCount);&lt;BR&gt;        dwImageSize = nBytesPerLine * lpBitmapInfo-&gt;bmiHeader.biHeight;&lt;BR&gt;    }&lt;BR&gt;&lt;BR&gt;    GdiFlush();&lt;BR&gt;&lt;BR&gt;    memcpy(m_pBits, lpBits, dwImageSize);&lt;BR&gt;&lt;BR&gt;    return TRUE;&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;BOOL CDib::Draw(CDC* pDC, CPoint ptDest) &lt;BR&gt;{ &lt;BR&gt;    if (!m_hBitmap)&lt;BR&gt;        return FALSE;&lt;BR&gt;&lt;BR&gt;    CSize size = GetSize();&lt;BR&gt;    CPoint SrcOrigin = CPoint(0,0);&lt;BR&gt;&lt;BR&gt;    BOOL resVal = FALSE;&lt;BR&gt;&lt;BR&gt;    resVal = SetDIBitsToDevice(pDC-&gt;GetSafeHdc(), &lt;BR&gt;                                ptDest.x, ptDest.y, &lt;BR&gt;                                size.cx, size.cy,&lt;BR&gt;                                SrcOrigin.x, SrcOrigin.y,&lt;BR&gt;                                SrcOrigin.y, size.cy - SrcOrigin.y, &lt;BR&gt;                                GetDIBits(), &amp;m_BMinfo, &lt;BR&gt;                                DIB_RGB_COLORS); &lt;BR&gt;&lt;BR&gt;    return resVal;&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;COLORREF CDib::FixColorRef(COLORREF clr)&lt;BR&gt;{&lt;BR&gt;	int r = GetRValue(clr);&lt;BR&gt;	int g = GetGValue(clr);&lt;BR&gt;	int b =  GetBValue(clr);&lt;BR&gt;&lt;BR&gt;	return RGB(b,g,r);&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;&lt;img src ="http://blog.vckbase.com/bastet/aggbug/34736.html" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Diviner</dc:creator><title>如何重载operator new,delete操作</title><link>http://blog.vckbase.com/bastet/archive/2008/08/06/34595.html</link><pubDate>Wed, 06 Aug 2008 05:31:00 GMT</pubDate><guid>http://blog.vckbase.com/bastet/archive/2008/08/06/34595.html</guid><wfw:comment>http://blog.vckbase.com/bastet/comments/34595.html</wfw:comment><comments>http://blog.vckbase.com/bastet/archive/2008/08/06/34595.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blog.vckbase.com/bastet/comments/commentRss/34595.html</wfw:commentRss><trackback:ping>http://blog.vckbase.com/bastet/services/trackbacks/34595.html</trackback:ping><description>得承认，这不困难，下面的这种做法可能看起来舒服些。&lt;BR&gt;&lt;BR&gt;#include &lt;malloc.h&gt;&lt;BR&gt;&lt;BR&gt;namespace HL &lt;BR&gt;{&lt;BR&gt;	class mallocHeap &lt;BR&gt;	{&lt;BR&gt;	public:&lt;BR&gt;&lt;BR&gt;		~mallocHeap (void) {}&lt;BR&gt;&lt;BR&gt;		inline void * malloc (size_t sz) &lt;BR&gt;		{&lt;BR&gt;			return ::malloc (sz);&lt;BR&gt;		}&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;		inline void free (void * ptr) &lt;BR&gt;		{&lt;BR&gt;			::free (ptr);&lt;BR&gt;		}&lt;BR&gt;&lt;BR&gt;		inline size_t getSize (void * ptr) &lt;BR&gt;		{&lt;BR&gt;			return ::_msize (ptr);&lt;BR&gt;		}&lt;BR&gt;	};&lt;BR&gt;&lt;BR&gt;	template &lt;class SuperHeap&gt;&lt;BR&gt;	class PerClassHeap &lt;BR&gt;	{&lt;BR&gt;	public:&lt;BR&gt;		inline void * operator new (size_t sz) &lt;BR&gt;		{&lt;BR&gt;			printf("Malloc one\n");&lt;BR&gt;			return getHeap()-&gt;malloc (sz);&lt;BR&gt;		}&lt;BR&gt;		inline void operator delete (void * ptr) &lt;BR&gt;		{&lt;BR&gt;			printf("delete one\n");&lt;BR&gt;			getHeap()-&gt;free (ptr);&lt;BR&gt;		}&lt;BR&gt;		inline void * operator new[] (size_t sz) &lt;BR&gt;		{&lt;BR&gt;			return getHeap()-&gt;malloc (sz);&lt;BR&gt;		}&lt;BR&gt;		inline void operator delete[] (void * ptr) &lt;BR&gt;		{&lt;BR&gt;			getHeap()-&gt;free (ptr);&lt;BR&gt;		}&lt;BR&gt;		// For some reason, g++ needs placement new to be overridden&lt;BR&gt;		// as well, at least in conjunction with use of the STL.&lt;BR&gt;		// Otherwise, this should be superfluous.&lt;BR&gt;		inline void * operator new (size_t sz, void * p) { return p; }&lt;BR&gt;		inline void * operator new[] (size_t sz, void * p) { return p; }&lt;BR&gt;&lt;BR&gt;	private:&lt;BR&gt;		inline static SuperHeap * getHeap (void) &lt;BR&gt;		{&lt;BR&gt;			static SuperHeap theHeap;&lt;BR&gt;			return &amp;theHeap;&lt;BR&gt;		}&lt;BR&gt;	};&lt;BR&gt;&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;class TestB : public HL::PerClassHeap&lt;HL::mallocHeap&gt;&lt;BR&gt;{&lt;BR&gt;&lt;BR&gt;};&lt;img src ="http://blog.vckbase.com/bastet/aggbug/34595.html" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Diviner</dc:creator><title>在程序里使用Squirrel脚本互相调用。</title><link>http://blog.vckbase.com/bastet/archive/2008/07/03/34280.html</link><pubDate>Thu, 03 Jul 2008 05:55:00 GMT</pubDate><guid>http://blog.vckbase.com/bastet/archive/2008/07/03/34280.html</guid><wfw:comment>http://blog.vckbase.com/bastet/comments/34280.html</wfw:comment><comments>http://blog.vckbase.com/bastet/archive/2008/07/03/34280.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blog.vckbase.com/bastet/comments/commentRss/34280.html</wfw:commentRss><trackback:ping>http://blog.vckbase.com/bastet/services/trackbacks/34280.html</trackback:ping><description>Squirrel是个脚本，再具体的就不说了，直接看代码。&lt;BR&gt;#pragma pack(push,1)&lt;BR&gt;namespace DZH&lt;BR&gt;{&lt;BR&gt;	struct DayData&lt;BR&gt;	{&lt;BR&gt;		unsigned long date;//date的格式：20070423&lt;BR&gt;		unsigned long open;//开盘价&lt;BR&gt;		unsigned long high;//最高价&lt;BR&gt;		unsigned long low;//最低价&lt;BR&gt;		unsigned long close;//收盘价&lt;BR&gt;		unsigned long moneysum;//成交金额&lt;BR&gt;		unsigned long turnover;//成交数量&lt;BR&gt;		char unused[12];//保留&lt;BR&gt;	};&lt;BR&gt;}&lt;BR&gt;#pragma pack(pop)&lt;BR&gt;&lt;BR&gt;DZH::DayData curData;&lt;BR&gt;&lt;BR&gt;SQInteger ScriptGetOpen(HSQUIRRELVM v) &lt;BR&gt;{&lt;BR&gt;	StackHandler sa(v);&lt;BR&gt;	int paramCount = sa.GetParamCount();&lt;BR&gt;	//假设只有一个参数，也确实只有一个参数,我们现在先没有参数传递进去吧。//sa.GetInt(i)),sa.GetString(i)来获得参数&lt;BR&gt;	return sa.Return((INT)curData.open);&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;SQInteger ScriptGetClose(HSQUIRRELVM v) &lt;BR&gt;{&lt;BR&gt;	StackHandler sa(v);&lt;BR&gt;	int paramCount = sa.GetParamCount();&lt;BR&gt;	//假设只有一个参数，也确实只有一个参数,我们现在先没有参数传递进去吧。//sa.GetInt(i)),sa.GetString(i)来获得参数&lt;BR&gt;	return sa.Return((INT)curData.close);&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;这里定义了两个在脚本里可以调用的函数&lt;BR&gt;初始化一下&lt;BR&gt;	SquirrelVM::Init();&lt;BR&gt;	SquirrelVM::CreateFunctionGlobal(ScriptGetOpen,"GetOpen",_T(""));&lt;BR&gt;	SquirrelVM::CreateFunctionGlobal(ScriptGetClose,"GetClose",_T(""));    // String var name.&lt;BR&gt;	SquirrelObject scriptfunc=SquirrelVM::CompileBuffer("function ciao()\r\n{ return GetOpen()-GetClose();\r\n}");//这里用到了上面定义的函数&lt;BR&gt;	SquirrelVM::RunScript(scriptfunc);&lt;BR&gt;&lt;BR&gt;使用：&lt;BR&gt;SqPlus::SquirrelFunction&lt;int&gt; func_formula(_T("ciao"));&lt;BR&gt;	int ival = func_formula();&lt;BR&gt;这样就ＯＫ了，是如此的方便。&lt;BR&gt;&lt;img src ="http://blog.vckbase.com/bastet/aggbug/34280.html" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Diviner</dc:creator><title>vs2008加快速度，减小内存使用的方法</title><link>http://blog.vckbase.com/bastet/archive/2008/05/07/33554.html</link><pubDate>Wed, 07 May 2008 03:24:00 GMT</pubDate><guid>http://blog.vckbase.com/bastet/archive/2008/05/07/33554.html</guid><wfw:comment>http://blog.vckbase.com/bastet/comments/33554.html</wfw:comment><comments>http://blog.vckbase.com/bastet/archive/2008/05/07/33554.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://blog.vckbase.com/bastet/comments/commentRss/33554.html</wfw:commentRss><trackback:ping>http://blog.vckbase.com/bastet/services/trackbacks/33554.html</trackback:ping><description>假如只用VC的话，删去common7下的下列文件&lt;BR&gt; 驱动器 G 中的卷是 新加卷&lt;BR&gt; 卷的序列号是 9453-F61B&lt;BR&gt;&lt;BR&gt; G:\vs9\Common7\remove 的目录&lt;BR&gt;&lt;BR&gt;2008-05-07  13:45    &lt;DIR&gt;          .&lt;BR&gt;2008-05-07  13:45    &lt;DIR&gt;          ..&lt;BR&gt;2007-11-08  00:58            10,240 iisresolver.dll&lt;BR&gt;2007-11-08  17:26           421,888 Microsoft.Data.ConnectionUI.Dialog.dll&lt;BR&gt;2007-11-08  17:26             6,656 Microsoft.Data.ConnectionUI.dll&lt;BR&gt;2007-10-10  22:47             6,631 Microsoft.Data.ConnectionUI.xml&lt;BR&gt;2007-11-08  17:26           122,880 Microsoft.VisualStudio.Data.Compatibility.dll&lt;BR&gt;2007-11-08  17:26           253,952 Microsoft.VisualStudio.Data.dll&lt;BR&gt;2007-11-08  17:26            40,960 Microsoft.VisualStudio.Data.Host.dll&lt;BR&gt;2007-11-08  17:26            32,768 Microsoft.VisualStudio.Data.Interop.dll&lt;BR&gt;2007-11-08  17:26           499,712 Microsoft.VisualStudio.Data.Package.dll&lt;BR&gt;2007-11-08  17:26            53,248 Microsoft.VisualStudio.Data.Providers.Common.dll&lt;BR&gt;2007-11-08  17:26           167,936 Microsoft.VisualStudio.Data.Providers.Oracle.dll&lt;BR&gt;2007-11-08  17:26           446,464 Microsoft.VisualStudio.Data.Providers.SqlServer.dll&lt;BR&gt;2007-11-08  17:26           475,136 Microsoft.VisualStudio.DataDesign.SyncDesigner.Dsl.dll&lt;BR&gt;2007-11-08  17:26           688,128 Microsoft.VisualStudio.DataDesign.SyncDesigner.DslPackage.dll&lt;BR&gt;2007-11-08  17:26         1,089,536 Microsoft.VisualStudio.DataTools.dll&lt;BR&gt;2007-11-08  17:26            40,960 Microsoft.VisualStudio.DataTools.Interop.dll&lt;BR&gt;2007-11-09  00:19           249,856 Microsoft.VisualStudio.DeployWizard.Dll&lt;BR&gt;2007-10-10  20:26           352,472 Microsoft.VisualStudio.vspBatchParser.dll&lt;BR&gt;2007-10-10  20:26           142,040 Microsoft.VisualStudio.vspConnectionInfo.dll&lt;BR&gt;2007-10-10  20:26           199,384 Microsoft.VisualStudio.vspGridControl.dll&lt;BR&gt;2007-10-10  20:26            64,216 Microsoft.VisualStudio.vspRegSvrEnum.dll&lt;BR&gt;2007-10-10  20:26            39,640 Microsoft.VisualStudio.vspServiceBrokerEnum.dll&lt;BR&gt;2007-10-10  20:26         1,551,064 Microsoft.VisualStudio.vspSmo.dll&lt;BR&gt;2007-10-10  20:26           207,576 Microsoft.VisualStudio.vspSmoEnum.dll&lt;BR&gt;2007-10-10  20:26           862,936 Microsoft.VisualStudio.vspSqlEnum.dll&lt;BR&gt;2007-10-10  20:26            43,736 Microsoft.VisualStudio.vspSqlTDiagM.dll&lt;BR&gt;2007-10-10  20:26            43,736 Microsoft.VisualStudio.vspWmiEnum.dll&lt;BR&gt;2007-11-08  17:26         1,024,000 Microsoft.VisualStudio.Web.dll&lt;BR&gt;2007-11-08  17:26           176,128 Microsoft.VisualStudio.WPFFlavor.dll&lt;BR&gt;2007-11-09  00:19           856,064 Microsoft.VSDesigner.Management.dll&lt;BR&gt;2007-11-08  17:26           405,504 Microsoft.Web.Design.Client.dll&lt;BR&gt;2007-10-23  09:55           156,728 Microsoft.Workflow.DebugController.dll&lt;BR&gt;2007-10-23  09:55            14,400 Microsoft.Workflow.ExpressionEvaluation.dll&lt;BR&gt;2007-10-23  09:55            11,776 Microsoft.Workflow.ExpressionEvaluation.pdb&lt;BR&gt;2007-10-23  09:55           541,744 Microsoft.Workflow.VSDesigner.dll&lt;BR&gt;2007-11-08  00:58         4,068,856 msvb7.dll&lt;BR&gt;2008-05-07  13:39    &lt;DIR&gt;          Packages&lt;BR&gt;2008-05-07  13:45                 0 remove.txt&lt;BR&gt;2007-10-23  09:55           357,376 WDE.dll&lt;BR&gt;2007-11-08  17:26            90,112 WindowsFormsIntegration.Design.dll&lt;BR&gt;2007-11-08  17:26            45,056 WindowsFormsIntegration.Package.dll&lt;BR&gt;2007-11-08  17:26            12,288 WinFxBrowserApplicationTemplateWizard.dll&lt;BR&gt;2007-11-08  17:26            13,312 WinFxCustomControlTemplateWizard.dll&lt;BR&gt;2007-10-23  09:55           192,016 WorkflowProject.dll&lt;BR&gt;              43 个文件     16,079,111 字节&lt;BR&gt;&lt;BR&gt; G:\vs9\Common7\remove\Packages 的目录&lt;BR&gt;&lt;BR&gt;2008-05-07  13:39    &lt;DIR&gt;          .&lt;BR&gt;2008-05-07  13:39    &lt;DIR&gt;          ..&lt;BR&gt;2007-11-08  17:26           225,272 csspkg.dll&lt;BR&gt;2008-05-07  13:40    &lt;DIR&gt;          Debugger&lt;BR&gt;2007-11-08  17:26           156,160 htmdlgs.dll&lt;BR&gt;2007-11-08  17:26         2,419,704 htmled.dll&lt;BR&gt;2007-11-08  17:26           151,552 srcedit.dll&lt;BR&gt;2007-11-08  17:26           375,296 webdirprj.dll&lt;BR&gt;               5 个文件      3,327,984 字节&lt;BR&gt;&lt;BR&gt; G:\vs9\Common7\remove\Packages\Debugger 的目录&lt;BR&gt;&lt;BR&gt;2008-05-07  13:40    &lt;DIR&gt;          .&lt;BR&gt;2008-05-07  13:40    &lt;DIR&gt;          ..&lt;BR&gt;2007-11-08  17:26           578,040 cpde.dll&lt;BR&gt;2007-11-08  17:26           853,504 cscompee.dll&lt;BR&gt;2007-11-08  17:26           184,824 jsee.dll&lt;BR&gt;2007-11-09  00:19           251,896 sqlde.dll&lt;BR&gt;2007-11-09  00:19           196,088 sqlle.dll&lt;BR&gt;               5 个文件      2,064,352 字节&lt;BR&gt;&lt;BR&gt;     所列文件总数:&lt;BR&gt;              53 个文件     21,471,447 字节&lt;BR&gt;               8 个目录 11,531,968,512 可用字节&lt;BR&gt;&lt;BR&gt;注：我是pro版本，也许ts的可以删除更多的。&lt;img src ="http://blog.vckbase.com/bastet/aggbug/33554.html" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Diviner</dc:creator><title>gcc 4.3.0　for win32</title><link>http://blog.vckbase.com/bastet/archive/2008/04/01/33116.html</link><pubDate>Tue, 01 Apr 2008 13:37:00 GMT</pubDate><guid>http://blog.vckbase.com/bastet/archive/2008/04/01/33116.html</guid><wfw:comment>http://blog.vckbase.com/bastet/comments/33116.html</wfw:comment><comments>http://blog.vckbase.com/bastet/archive/2008/04/01/33116.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.vckbase.com/bastet/comments/commentRss/33116.html</wfw:commentRss><trackback:ping>http://blog.vckbase.com/bastet/services/trackbacks/33116.html</trackback:ping><description>http://www.tdragon.net/recentgcc/&lt;BR&gt;&lt;BR&gt;Twilight Dragon Media Logo&lt;BR&gt;Navigation&lt;BR&gt;Home&lt;BR&gt;Recent GCC Binaries for MinGW&lt;BR&gt;News&lt;BR&gt;2008-03-22&lt;BR&gt;GCC 4.3.0 TDM-2 released! Shared libgcc&amp;libstdc++ and Dwarf-2 exceptions are here! Make sure to read the usage notes for details on the new features.&lt;BR&gt;&lt;BR&gt;2008-03-11&lt;BR&gt;GCC 4.3.0 TDM-1 released! All previous bugfixes are integrated into the source now, plus a whole slew of new features in the GCC 4.3 changelog. Look for builds with shared libraries and Dwarf2 exceptions coming soon!&lt;BR&gt;&lt;BR&gt;2008-02-03&lt;BR&gt;GCC 4.2.3 TDM-1 released! Includes all previous TDM fixes plus a few bugfixes in the vanilla sources from 4.2.2.&lt;BR&gt;&lt;BR&gt;2007-10-11&lt;BR&gt;GCC 4.2.2 TDM-1 released! Various bugfixes in the vanilla sources from 4.2.1 to 4.2.2, plus a patch to fix the ICE compiling GNU gettext.&lt;BR&gt;&lt;BR&gt;2007-08-06&lt;BR&gt;GCC 4.2.1 TDM-2 released! Now includes Objective-C++ and Treelang packages, and support for non-UTF-8 charsets (-finput-charset, etc.).&lt;BR&gt;&lt;BR&gt;TDM's Experimental GCC/MinGW32 Builds&lt;BR&gt;Binary packages of recent GCC releases targeting the MinGW compiler system&lt;BR&gt;Main Page | Development Information | Bugs&lt;BR&gt;&lt;BR&gt;SourceForge.net Logo&lt;BR&gt;TDM GCC releases hosted by SourceForge&lt;BR&gt;Support This Project&lt;BR&gt;Consider making a donation to support the TDM-GCC project&lt;BR&gt;Last updated: 2008-03-28 09:04&lt;BR&gt;&lt;BR&gt;in a nutshell&lt;BR&gt;The TDM-GCC builds are unofficially created packages designed to replace, for experimentation purposes, the official MinGW releases of GCC binaries. The TDM-GCC builds typically contain fewer changes from the vanilla sources and receive less testing than their official counterparts. Since these builds are not formally affiliated with or endorsed by the MinGW project, they should be treated as unstable and unsupported software -- in other words, use it at your own risk.&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;Recommended Download&lt;BR&gt;GCC 4.3.0-tdm-2&lt;BR&gt;(Default SJLJ exceptions)&lt;BR&gt;Released 2008-03-21&lt;BR&gt;Package 	Download&lt;BR&gt;core&lt;BR&gt;(Required base files and C support) 	[tar.gz] (5.67 MB) or [zip] (5.44 MB)&lt;BR&gt;g++&lt;BR&gt;(C++ support) 	[tar.gz] (8.41 MB) or [zip] (8.73 MB)&lt;BR&gt;fortran&lt;BR&gt;(Fortran support) 	[tar.gz] (4.54 MB) or [zip] (4.34 MB)&lt;BR&gt;objc&lt;BR&gt;(Objective-C support) 	[tar.gz] (3.55 MB) or [zip] (3.41 MB)&lt;BR&gt;objc++&lt;BR&gt;(Objective-C++ support) 	[tar.gz] (3.68 MB) or [zip] (3.53 MB)&lt;BR&gt;	OR	&lt;BR&gt;GCC 4.3.0-tdm-2&lt;BR&gt;With DW2 Exceptions&lt;BR&gt;Released 2008-03-21&lt;BR&gt;Package 	Download&lt;BR&gt;core&lt;BR&gt;(Required base files and C support) 	[tar.gz] (7.84 MB) or [zip] (7.49 MB)&lt;BR&gt;g++&lt;BR&gt;(C++ support) 	[tar.gz] (6.30 MB) or [zip] (6.76 MB)&lt;BR&gt;fortran&lt;BR&gt;(Fortran support) 	[tar.gz] (4.52 MB) or [zip] (4.34 MB)&lt;BR&gt;objc&lt;BR&gt;(Objective-C support) 	[tar.gz] (3.54 MB) or [zip] (3.41 MB)&lt;BR&gt;objc++&lt;BR&gt;(Objective-C++ support) 	[tar.gz] (3.66 MB) or [zip] (3.53 MB)&lt;BR&gt;For previous releases and source code, see the TDM-GCC download page on SourceForge.&lt;BR&gt;GCC is supposed to support language XYZ! Why isn't there a language pack available for it?&lt;BR&gt;See the development page for details on languages that don't currently compile -- maybe you can provide a patch or alternate build command so that they can!&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;installation&lt;BR&gt;These binary packages are designed as drop-in replacements for the MinGW project's official gcc packages. When using these packages, you are encouraged to start with a clean slate and install only the MinGW packages which are necessary to you. At a minimum for basic Windows development, you'll need the following packages:&lt;BR&gt;&lt;BR&gt;    * binutils (binutils-2.18.50-20080109-2.tar.gz, 5.81MB)&lt;BR&gt;    * mingw-runtime (mingw-runtime-3.14.tar.gz, 494KB)&lt;BR&gt;    * w32api (w32api-3.11.tar.gz, 1.55MB)&lt;BR&gt;&lt;BR&gt;You might also want to install:&lt;BR&gt;&lt;BR&gt;    * mingw-utils (mingw-utils-0.3.tar.gz, 1.51MB)&lt;BR&gt;    * mingw32-make (mingw32-make-3.81-2.tar.gz, 95KB)&lt;BR&gt;    * gdb (gdb-6.6.tar.bz2, 1.80MB)&lt;BR&gt;&lt;BR&gt;You'll need GDB particularly if you want to use an IDE with debugging support.&lt;BR&gt;&lt;BR&gt;Decide whether to use the SJLJ or DW2 (Dwarf-2) exception model. As a general rule, you should choose the default SJLJ packages, unless you know you need faster exception handling and can guarantee you'll never need to unwind through non-DW2-compiled stack frames (such as a Windows callback). Then, for the exception model of your choice, download at least the "core" TDM-GCC package, which includes the required base files as well as support for the C language. You can also download any or all of the other TDM-GCC packages, depending on which of GCC's supported languages you'd like to use.&lt;BR&gt;&lt;BR&gt;Extract the MinGW packages to an empty directory -- typically C:\MinGW. Then, extract the TDM-GCC package(s) and choose to overwrite any duplicate files that may exist. If you chose to use the "dw2" TDM-GCC packages, consider removing the "-dw2" suffix from the program names; see the README file or the usage notes for further details. Finally, consider adding the bin directory to your Windows PATH environment variable.&lt;BR&gt;&lt;BR&gt;You can browse all released packages and source packages at the TDM-GCC download page on SourceForge. Beginning with the 4.3.0 release, all TDM-GCC releases are now available as gzipped tarballs or zip archives. Previous releases do, of course, still require 7-Zip for unarchiving.&lt;BR&gt;&lt;BR&gt;All-in-One Installer:&lt;BR&gt;Giovanni Bajo created an "all-in-one" user-friendly installer of an earlier 4.1.2 GCC-TDM release, which additionally features full Python integration. The full installer is available at http://www.develer.com/oss/GccWinBinaries.&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;usage notes&lt;BR&gt;Exceptions and DLLs:&lt;BR&gt;WARNING: The shared libgcc and libstdc++ in 4.3.0 aren't fully working yet; depending on which objects you use from libstdc++, you may see multiple definition errors and/or auto-import warnings.&lt;BR&gt;&lt;BR&gt;In order to throw an exception out of a DLL and successfully catch it, your program must link with the shared (DLL) versions of libgcc and libstdc++. This is important for several reasons.&lt;BR&gt;&lt;BR&gt;    * The default action is still to link with the static versions of these libraries. This is fine for the majority of people. In order to link with the shared versions of libgcc and libstdc++, you need to add "-shared-libgcc" and "-lstdc++_s" to the link-time compilation step. For example: gcc -o test.exe test.o -ltest -shared-libgcc -lstdc++_s.&lt;BR&gt;    * If you make use of common libstdc++ objects in your program while using the above options, you'll see auto-import warnings and/or errors unless you ALSO, at COMPILE-TIME, define the macro "_DLL". You can either do a "#define _DLL" before including libstdc++ headers, or add "-D_DLL" to the command line. For example: gcc -c -o test.o test.cpp -D_DLL.&lt;BR&gt;    * Linking with the shared versions of libgcc and libstdc++ means you have to distribute the libgcc and libstdc++ DLLs along with your programs. Also, this in turn tends to open up questions about the GPL and source code distribution requirements; be sure to read this page from the MinGW Wiki, as well as this FAQ from the GNU website's GPL FAQs. &lt;BR&gt;&lt;BR&gt;Dwarf-2 vs. SJLJ unwinding:&lt;BR&gt;GCC supports two methods of stack frame unwinding: Dwarf-2 (DW2) or SJLJ (setjmp/longjmp). Until recently, only SJLJ has been available for the Windows platform. This affects you, the end user, primarily in programs that throw and catch exceptions. Programs which utilize the DW2 unwind method handle exceptions much more quickly than programs which utilize the SJLJ method. However, the DW2 method increases code size by a noticeable amount, and additionally cannot yet unwind (pass exceptions) through "foreign" stack frames: stack frames compiled by another non-DW2-enabled compiler, such as OS DLLs in a Windows callback.&lt;BR&gt;&lt;BR&gt;This means that you should in general choose the SJLJ version of the TDM-GCC builds unless you know you need faster exception handling and can be certain you will never throw an exception through a foreign stack area.&lt;BR&gt;&lt;BR&gt;As distributed, the SJLJ and DW2 packages of TDM-GCC can coexist peacefully extracted to the same directory (e.g. any files in common are for all intents and purposes identical), because the driver executables (the ones in the "bin" directory) are suffixed with "-dw2" for the DW2 build, and the libraries and other executables hide in another "-dw2" directory in "lib(exec)/gcc/mingw32". This allows you to use the same single addition to your PATH, and use DW2 exceptions only when you need them by calling "gcc-dw2", etc. If you truly want DW2 exceptions as the default when calling "gcc" (from Makefiles or configury systems, for example), you can rename or copy the suffixed executables to their original names.&lt;BR&gt;&lt;BR&gt;Warnings and errors:&lt;BR&gt;GCC 4 represents a significant step forward in optimization capabilities, error detection, and standards compliance, and this is more true than ever with the advent of the 4.3 release series. For you, the end user, this will mean that code which used to compile and run without problems will almost certainly exhibit some warnings and maybe even a few errors.&lt;BR&gt;&lt;BR&gt;These meaningful warnings and errors are a very good thing, as they help the programmer to write safer and more correct code. Unfortunately, there's also a chance you might encounter incorrect warnings or errors, ICE's (internal compiler errors, where the compiler makes a mistake and has to bail out), or even miscompilations (where your code is incorrectly compiled and produces the wrong result).&lt;BR&gt;&lt;BR&gt;If you encounter an ICE while using a TDM-GCC build, feel free to file a bug report (see the Bugs page). With any other unexpected problem, you are urged to work from the assumption that it stems from user error, and ensure that your code is correct and standards-compliant.&lt;BR&gt;&lt;BR&gt;OpenMP and pthreads-w32:&lt;BR&gt;The TDM-GCC releases include support for OpenMP. Be sure to read the file README-gcc-tdm.txt, included in the core package, for usage notes on this topic.&lt;BR&gt;&lt;BR&gt;Local Fixes and Changes:&lt;BR&gt;See the Development page for information on patches to the vanilla sources included in the TDM-GCC releases.&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;bugs and known issues&lt;BR&gt;&lt;BR&gt;    * [Only releases prior to 4.3.0-tdm-2] Exceptions cannot leave DLLs. This issue was fixed in the official MinGW releases with local patches for the 3.4 series and 4.2 series, but is not fixed in the main GCC sources. Beginning with 4.3.0-tdm-2, the patchset to build shared libraries and fix this has been ported to the TDM-GCC releases. The problem only appears in previous releases when a function in a DLL called from outside the DLL throws (or fails to catch) an exception, and results in program termination at that point.&lt;BR&gt;    * [4.2 series only] A miscompilation can occur in very specific situations when -O2 optimization is enabled, if you pass the address of a local pointer variable to a function that modifies it. Use "-O2 -fno-strict-aliasing" as a workaround. This has been fixed as of the 4.3 series. (See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32328) &lt;BR&gt;&lt;BR&gt;These builds are provided primarily on an experimental basis. As such, they are expected to contain bugs. If you encounter a bug that you are certain is in the GCC sources (such as an ICE), or that is due to an issue in the building or packaging process, you are encouraged to report it. Please visit the Bugs Page for bug reporting instructions.&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;source code&lt;BR&gt;The source code for the TDM-GCC binary releases is available from the TDM-GCC download page on SourceForge. It is distributed in the form of the original ("vanilla") separate source packages as downloaded, plus an additional "TDM Sources" package. The TDM Sources package includes unified diffs of any changes made to the vanilla sources, as well as the set of scripts used to build the binary releases.&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;license&lt;BR&gt;The TDM-GCC packages contain binary distributions constituting a work based on GCC, which is licensed under the GPL. For further details, refer to the file "COPYING-gcc-tdm.txt" within the downloaded package. Additionally, TDM-GCC contains binary files constituting works based on libiconv, GMP, MPFR, and pthreads-w32, all of which are licensed under the LGPL; COPYING.lib-gcc-tdm.txt contains a copy of the LGPL.&lt;BR&gt;&lt;BR&gt;The TDM-GCC distribution is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.&lt;BR&gt;&lt;BR&gt;TDM-GCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.&lt;BR&gt;&lt;BR&gt;You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;The contents of this website, including but not limited to graphics, layout, and text, are copyright John E. 2005-2008. All rights reserved; you must obtain explicit written permission from the author before using any portion of this site in your own works. This website is designed to be best viewed in HTML 4.01 and CSS2+ compliant browsers running under a monitor resolution of at least 1024x768.&lt;BR&gt;&lt;img src ="http://blog.vckbase.com/bastet/aggbug/33116.html" width = "1" height = "1" /&gt;</description></item><item><dc:creator>Diviner</dc:creator><title>转贴-农民工，滚回你们的农村去！”</title><link>http://blog.vckbase.com/bastet/archive/2008/01/29/32407.html</link><pubDate>Tue, 29 Jan 2008 10:15:00 GMT</pubDate><guid>http://blog.vckbase.com/bastet/archive/2008/01/29/32407.html</guid><wfw:comment>http://blog.vckbase.com/bastet/comments/32407.html</wfw:comment><comments>http://blog.vckbase.com/bastet/archive/2008/01/29/32407.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://blog.vckbase.com/bastet/comments/commentRss/32407.html</wfw:commentRss><trackback:ping>http://blog.vckbase.com/bastet/services/trackbacks/32407.html</trackback:ping><description>&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;在城市里，往往听到这样的呼声：&amp;#8220;农民工，滚回你们的农村去！&amp;#8221;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;每当听到这样的话，让人感到很俗气，很恶心，腹内便有了翻江倒海般的感觉。原始的意识告诉我，那就是想呕吐。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;曾几何时，农民工成了江洋大大盗的代名词，成了社会动荡的主因，成了猥琐，龌龊，无知的形像代言人。农民工围攻政府，农民工抢劫杀人，农民工入室盗窃，农民工跳楼讨薪，农民工奸淫掳掠。实足是八国联军进城。种种种种每日成了各大新闻媒体报刊杂志的头条。于是&amp;#8220;农民工&amp;#8221;这三个字顿时成了全国舆论的焦点。大有席卷全世界之势。感谢城里的都市人，让咱们这些名不见经传，没见过世面的农民工着着实实的风光了一把。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;凡冠以农民工之名的各种杂志必定大卖，新闻必定大红大紫，电影必定叫坐。那么，是谁成就了农民工？&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;农民工，即使在广州深圳这样的大城市里生活了近七八个年头。尽管说得一口流利的粤语，取得广州户口，但每每有人问及是哪里人，他们都得说咱是农村来的。因为他们摆脱不了头上顶着的农民工的那个光圈，走到哪里也洗不掉农村人身上的那股牛屎味&amp;#8230;&amp;#8230;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;当地上躺着一块钱，城里人会昂着头走地去，装做没看见，而他们会弯着腰，捡起来拍拍上面的尘土，如获至宝，因为他们是农民工，就那点出息。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;当城里人坐在装修气派的餐厅酒楼大鱼大肉的时候，他们就是站在城里人旁边帮他们摆碗摆筷，端茶送水的人。看着城里人喝得酩酊大醉，吃得满嘴流油，他们心里在想：什么时候咱也能像城里人一样坐下来，让人伺候着，然后大手一甩，对着身边低头哈腰，满脸陪笑的服务员大叫一声：刷卡或者签单。他们只想体验下做城里人的感觉。他们只想体验一下那种欺负人的感觉，因为他们是农民工，他们就那点出息。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;当城里人坐在酒吧歌厅怀里搂着&amp;#8220;小妹&amp;#8221;，口里唱着&amp;#8220;十八摸&amp;#8221;，手在小妹身上游来游去，眼睛死盯着若隐若现的乳沟的时候，然后将印着毛主席头像的百元大钞往小妹乳罩里面塞，来搏取小妹如蛇般的曼妙身姿，在他怀中扭来扭去而激发的快感时，他们却坐在人行天桥上或者地下通道里，怀里抱着那十多年前花了几十块买的破吉它，口里唱着离家的孩子，眼睛死盯着过路的行人的口袋，希望从那里蹦出一、两个钢崩，然后听到一声清脆的叮铛声，摆在面前的盆子里多出一个银晃晃的硬币。再然后向施舍的人投去感激的眼神，鞠上一个深深躬。是的，城里人在想尽办法将自己的钱丢进别人人口袋的时候，他们却想着怎么让城里人把钱丢进自己的口袋。因为他们是农民工，他们不知道快感为何物，只知道生活让他们明白必须得卑躬屈膝的做人。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;当城里的作者、学者、社会评论员或者社会学学者拿&amp;#8220;农民工&amp;#8221;这三个字做为噱头，大肆渲染他们的文章或者社会评论赚取大把大把的花花绿绿的钞票的时候，农民工便成了他们赚钱的机器，成了他们的提款机，只要他们出示&amp;#8220;农民工&amp;#8221;三个字，无需密码验证。钱就源源不断的流入了他们的口袋。如果把学者们当做是编剧，农民工便是那剧集里面的男女主角。不同于那些大腕明星，可以甩大牌，可以提条件。谈报酬，而农民工只是老老实实的按照他们笔下刻画的形像去演好自己的角色，没有报酬。编剧们达到了他们的目的，赢得了大把的利润，而他们只是期望大众的关注，但结果是却赢得无数的鄙视与不屑。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;他们只是一个农民工，只是因为生活所迫，希望在纸醉金迷，便地是黄金的都市里找个角落栖身，为自己的嘴赚取一口粗粮，为年幼的儿子赚取一桶奶粉。为年迈的父母赚取一副棺材。所以他们给城里人跪下，并哀求城里人。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;&amp;#8220;农民工，滚回你们的农村去。&amp;#8221;&lt;/SPAN&gt;&lt;FONT face="Times New Roman"&gt; &lt;/FONT&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;请城里人收回你们的这句话。他们只是一群为生计所迫的农民工，他们并不想跟城里人抢就业的机会，或者是均享你们的社会副利。他们只是在想：等咱有了钱，咱会带着儿子的奶粉和老娘的棺材滚回咱们的农村去的。不用你们叫咱滚。咱是农民工，但咱也有人格与尊严。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;不知道是谁创造了农民这个词，但他们知道自己为什么是个农民，道理很简单，他们的爷爷是个农民，所以他们的爹也是个农民，因为他们的爹是个农民，所以他们也是个农民。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;他们不知道为什么人家说自己离经叛道，说自己整天摆出个死猪不怕开水烫的调调。不就是因为抱怨邓小平同志太小气，要是&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;FONT face="Times New Roman"&gt;1979&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;年的那个春天，他的那个圈画大一点。或者将那个圈画在自己的家乡。他们不就成了城里人吗？只可惜邓小平同志只是在南海的边边上，画了一个小小的圈。以至于今天他们被别人叫成了农民工。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;农村，那个在迁客骚人誉为鸟语花香，民风纯朴的地方，曾经多么令人向往，可是在中国经济迅猛发展的今天。那里的人却还一直守着一亩三分田，日出而作，日落而栖，信息的闭塞，交通的闭塞，教育的落后，致使生活在那里的人衣食堪忧，因为农产品的廉价，生产成本的不断上升，农村人忙活了一年，所得的收入还抵不上开支，于是大多数的人开始背井离乡，去到一个叫城市的地方去淘金，希望在城市里凭着自己的勤劳，朴实找到一份工作。改变多桀的命运。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;可是当他们承载着全家人的梦想，来到这个被钢筋水泥浇成的都市里后，才发现偌大的一个城市，却没有弹丸之地让他们立足。他们没有上过大学，没有专业技能。当他们四处碰壁，口袋里的钱又所剩无几的时候，为了生存，为了满足他们最基本的生活需要，他们丧失了与用人单位或者说是雇主讨价还价的权力，于是街头巷尾出现了他们的影子，或拉着个板车，在小区内叫着只有他们才能听懂的：收垃圾咯，废旧电视，冰箱，&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;FONT face="Times New Roman"&gt;DVD&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;高价回收咯。或手里拎着个蛇皮袋子，在每个垃圾筒里翻来捣去，翻到一个矿泉水瓶或易拉罐也能让他们两眼放绿光。而更多的人，走进了工厂，开始廉价出卖他们的劳动力，成为资本家追求利益最大化的生产工具。还有一部分人不约而同的坐在某一个地方，等待那些需要雇佣零时工的雇主们来挑选。他们都来自农村，因此一个新名词便应运而生：农民工。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;但不是每个农民工付出了自己的劳动都能拿到相应的报酬，有很多人，劳碌了一年，眼看要过春节回家的时候，他们的雇主，却携款潜逃，或者他们打工的厂子因经营不善，发不出工资，他们拿不到一分钱，甚至回家的路费也没有，可是家里还有年迈的父母望眼欲穿，还有年青的妻子殷殷期盼，年幼的子女嗷嗷待哺。于是他们采用各种方式来索要本应属于他们的工资。他们有的跟雇主下跪，有的围堵包工头，他们没有法律意识。他们认为这是最简单也是最直接的方式，可是没有人去怜悯他们。也没有人去理会他们，他们上天无路，入地无门，当他们歇斯底里的哀求，仍得不到回应。他们开始铤而走险。抑或采取极端的方式进行抗争，如是出现了农民工爬上高楼或者塔吊以跳楼相要挟，抑或绑架欠他们工钱的人索要他们的工钱，或者砸坏机器来发泄他们心中的愤慨。更有甚者开始报复社会。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;我不是有意为农民工辩护，作为社会的弱势群体，缺乏自我保护的手段，他们朴实得有点愚昧，在这个整天叫嚣着平等与和谐的社会主义社会里饱受着欺凌与压榨。不可否认的，有一小撮农民工来到城市后，发现现实与他们的梦想相去甚远，挫败感让他们对生活失去了信心，他们开始吸毒，开始聚众闹事，开始入室盗窃，抢劫。甚至撬开某一出租屋，将自己的身体压在另一个不相识的异性的身体之上，于是城里人开始感到他们生活着的这城市里处处充满的危机。惶惶不可终日。于是开始忽略大部分农民工为这个城市的发展做出的贡献，口中大喊：&amp;#8220;农民工，滚回你们的农村去。&amp;#8221;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;就广东而言，仅湖南每年输入到这里的劳动力就超过五百万，城市的发展没有这些外来务工人员，也就是你们口中的农民工，不知道又会是个什么样子，我无法统计到这些外来的农民工到底每年为城市创造了多少价值，但可以肯定的一点，当你们叫嚣着：&amp;#8220;农民工，滚回你们的农村去&amp;#8221;的时候，也同时将你的愚昧狭隘凸显得一览无余。&lt;/SPAN&gt;&lt;/P&gt;
&lt;P 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0? 0cm&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;这一切不是某一个人的力量所能左右的，如果你学过政治，你应该知道国情这个词，很明显国情决定一切。&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;FONT face="Times New Roman"&gt;960&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;万平方公里，十三亿人口，农村人口占&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;FONT face="Times New Roman"&gt;70%&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;，&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;FONT face="Times New Roman"&gt;30%&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&gt;的的城里人却占了总资产的&lt;/SPAN&gt;&lt;SPAN lang=EN-US&gt;&lt;FONT face="Times New Roman"&gt;87%&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN 宋体; mso-ascii-font-family: Roman?; mso-hansi-font-family: ?Times New Roman??&g