﻿<?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>语源科技BlogJava-iceboundrock</title><link>http://www.blogjava.net/iceboundrock/</link><description /><language>zh-cn</language><lastBuildDate>Tue, 28 Apr 2026 18:57:14 GMT</lastBuildDate><pubDate>Tue, 28 Apr 2026 18:57:14 GMT</pubDate><ttl>60</ttl><item><title>如何对付令人郁闷的客户 之 如何处理客户提出的需求变更</title><link>http://www.blogjava.net/iceboundrock/archive/2006/12/05/85619.html</link><dc:creator>iceboundrock</dc:creator><author>iceboundrock</author><pubDate>Tue, 05 Dec 2006 09:07:00 GMT</pubDate><guid>http://www.blogjava.net/iceboundrock/archive/2006/12/05/85619.html</guid><wfw:comment>http://www.blogjava.net/iceboundrock/comments/85619.html</wfw:comment><comments>http://www.blogjava.net/iceboundrock/archive/2006/12/05/85619.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.blogjava.net/iceboundrock/comments/commentRss/85619.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/iceboundrock/services/trackbacks/85619.html</trackback:ping><description><![CDATA[刚刚看到有个哥们儿讲<a title="这就是我们的客户" href="/javajohn/archive/2006/11/08/74957.html#79811">他的客户让他很郁闷</a>，我有点想法，整理如下：<br /><br />首先，我觉得开发人员遇到这样的郁闷是因为控制需求变更功夫没有做足。原因有几点：<br />1.涉及需求变更的东西不应该由最终使用的用户和一线开发人员来沟通，这样的沟通费时费力而且不具有权威性。<br />2.开发人员直接向客户汇报的工作量往往比实际工作量要低，而且低的比较多。原因很简单：客户问开发人员一个功能是否困难的时候，一般技术人员往往只考虑了单项功能的复杂度，而可能对这个需求变更对整个系统的工作量估计不足（比如美工的工作量、该功能引发的管理功能的工作量、测试工作量等等）。<br />这种情况会对项目产生多个负面影响：a.向客户提供一个低于实际值的工作量，导致客户期望高，而实际无法按时完成导致客户失望大，降低用户满意度。b.因为客户从开发人员口中听到的工作量总是比从项目经理口中听到的工作量低，造成客户对项目组内部不一致，沟通不足的感觉。c.因为客户从开发人员口中听到的工作量总是比从项目经理口中听到的工作量低，引诱客户喜欢直接向开发人员提出需求变更，造成恶性循环，直接导致了项目组没法按时拿到奖金，士气下降。<br /><br />所以对于客户提出的需求变更，一般技术人员最好的处理方式是：委婉的告诉客户，这个问题需要项目经理来评估。哪怕用户用挑衅、教训的语气和你讲这个功能如何简单，如何如何就可以实现，你都不能告诉他是否可以接受这个变更，更不能说实现需要多长时间。<br />拒绝了客户之后并不是大功告成，你最好能够早于客户通知自己的项目经理，客户想进行怎样的需求变更，你自己对工作量的评估是怎么样的。这样可以给项目经理一个准备时间，来完善的考虑需求变更的影响。<br /><br />对于项目经理，尤其是从开发一线转向做项目经理的兄弟，应该主动的从项目全局来考虑一个变更的影响，而不是单纯从技术角度考虑。最好能按照公司的规范和制度以及项目实际情况为自己积累一份check list，以免在考虑需求变更时遗漏一些事项。作为开发方更要强化对于需求变更的控制。<br />控制需求变更最理想的办法当然是由客户方、开发方的项目经理和需求顾问共同组织CCB(变更控制委员会) <br />，文档化所有需求变更，双方签字然后归档需求变更。不过这样比较难以实现。但是最起码的要求是，必须由客户方项目经理（也就是甲方最终用户需要把需求变更汇总报告给甲方项目经理）向开发方项目经理提出需求变更，开发方项目经理评估工作量，并文档化需求变更，在与客户方负责人充分沟通后，使用正式方式将沟通结果（最好是打印出来给甲方签字，最起码是要求回执的电子邮件）通知客户。必要的时候需要业务人员协助，比如要求签署附加合同或者新开一个项目等等。<br /><br />从我做项目几年的经验来看，蛮不讲理的客户不是没有，但是是极少数，大多数客户，尤其是客户方项目经理都是通情达理的人。所以，只要你言之有理，对方都有可能接纳。<img src ="http://www.blogjava.net/iceboundrock/aggbug/85619.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/iceboundrock/" target="_blank">iceboundrock</a> 2006-12-05 17:07 <a href="http://www.blogjava.net/iceboundrock/archive/2006/12/05/85619.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++对象的构造、赋值和析构</title><link>http://www.blogjava.net/iceboundrock/archive/2006/11/25/83459.html</link><dc:creator>iceboundrock</dc:creator><author>iceboundrock</author><pubDate>Sat, 25 Nov 2006 08:08:00 GMT</pubDate><guid>http://www.blogjava.net/iceboundrock/archive/2006/11/25/83459.html</guid><wfw:comment>http://www.blogjava.net/iceboundrock/comments/83459.html</wfw:comment><comments>http://www.blogjava.net/iceboundrock/archive/2006/11/25/83459.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/iceboundrock/comments/commentRss/83459.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/iceboundrock/services/trackbacks/83459.html</trackback:ping><description><![CDATA[
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt">C++</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">C#/java</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有很多区别，其中最大的区别当数对内存的管理。</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt">C++</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中，类的使用者决定了类的实例内存会如何分配，分配在堆上还是栈上。我们先看一段例子程序：</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">#include</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="COLOR: maroon">"stdio.h"<o:p></o:p></span>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: maroon; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">class</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes"> Demo{<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">public</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">:<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>
						<span style="COLOR: blue">int</span> i;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>
						<span style="COLOR: blue">char</span>* objName;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>Demo(){<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>objName = <span style="COLOR: maroon">"Default object."</span>;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>printf(<span style="COLOR: maroon">"%s, objName = %s\r\n"</span>, <span style="COLOR: maroon">"Enter Demo default ctor. method."</span>, objName);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>i = 1000;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>}<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>Demo(<span style="COLOR: blue">int</span> ival, <span style="COLOR: blue">char</span>* name){<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>printf(<span style="COLOR: maroon">"%s,i = %d, objName = %s\r\n"</span>, <span style="COLOR: maroon">"Enter Demo(int ival) ctor method"</span>, ival, name);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>i = ival;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>objName = name;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>}<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>Demo(<span style="COLOR: blue">const</span> Demo&amp; d){<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>printf(<span style="COLOR: maroon">"%s\r\n"</span>, <span style="COLOR: maroon">"Enter Demo copy ctor method."</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>i = d.i;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>objName = <span style="COLOR: maroon">"copied d"</span>;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>}<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>~Demo(){<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 2">        </span>printf(<span style="COLOR: maroon">"%s, i = %d, objName = %s\r\n"</span>, <span style="COLOR: maroon">"Enter Demo dector. method"</span> , i, objName);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>}<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">};<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">Demo&amp; testMethod0(){<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>printf(<span style="COLOR: maroon">"%s\r\n"</span>, <span style="COLOR: maroon">"Enter testMethod0."</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>Demo d(0, <span style="COLOR: maroon">"d in testMethod0"</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>printf(<span style="COLOR: maroon">"%s\r\n"</span>, <span style="COLOR: maroon">"Exit testMethod0."</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>
						<span style="COLOR: blue">return</span> d;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">}<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">Demo testMethod1(){<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>printf(<span style="COLOR: maroon">"%s\r\n"</span>, <span style="COLOR: maroon">"Enter testMethod1."</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>Demo d(1, <span style="COLOR: maroon">"d in testMethod1"</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>printf(<span style="COLOR: maroon">"%s\r\n"</span>, <span style="COLOR: maroon">"Exit testMethod1."</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>
						<span style="COLOR: blue">return</span> d;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">}<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">Demo* testMethod2(){<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>printf(<span style="COLOR: maroon">"%s\r\n"</span>, <span style="COLOR: maroon">"Enter testMethod2."</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>Demo *d = <span style="COLOR: blue">new</span> Demo(2, <span style="COLOR: maroon">"d in testMethod2"</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>printf(<span style="COLOR: maroon">"%s\r\n"</span>, <span style="COLOR: maroon">"Exit testMethod2."</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>
						<span style="COLOR: blue">return</span> d;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">}<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">int</span>
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes"> main(<span style="COLOR: blue">int</span> argc, _TCHAR* argv[])<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">{<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>Demo d;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>d = testMethod1();<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>Demo&amp; d1 = testMethod0();<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>Demo d2(999, <span style="COLOR: maroon">"d1"</span>);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>Demo* d3 = testMethod2();<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>printf(<span style="COLOR: maroon">"d.i = %d\r\n"</span>, d.i);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>printf(<span style="COLOR: maroon">"d1.i = %d\r\n"</span>, d1.i);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>printf(<span style="COLOR: maroon">"d2.i = %d\r\n"</span>, d2.i);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>printf(<span style="COLOR: maroon">"d3.i = %d\r\n"</span>, d3-&gt;i);<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>
						<span style="COLOR: blue">delete</span> d3;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<span style="mso-tab-count: 1">    </span>
						<span style="COLOR: blue">return</span> 0;<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">}<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt; TEXT-ALIGN: left; mso-layout-grid-align: none" align="left">
				<span lang="EN-US" style="FONT-SIZE: 9pt; FONT-FAMILY: Consolas; mso-font-kerning: 0pt; mso-no-proof: yes">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt">Output</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">：</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo default ctor. method., objName = Default object.<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter testMethod1.<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo(int ival) ctor method,i = 1, objName = d in testMethod1<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Exit testMethod1.<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo copy ctor method.<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo dector. method, i = 1, objName = d in testMethod1<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo dector. method, i = 1, objName = copied d<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter testMethod0.<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo(int ival) ctor method,i = 0, objName = d in testMethod0<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Exit testMethod0.<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo dector. method, i = 0, objName = d in testMethod0<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo(int ival) ctor method,i = 999, objName = d1<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter testMethod2<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo(int ival) ctor method,i = 2, objName = d in testMethod2<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Exit testMethod2.<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">d.i = 1<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">d1.i = -2<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">d2.i = 999<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">d3.i = 2<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo dector. method, i = 2, objName = d in testMethod2<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo dector. method, i = 999, objName = d1<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; BACKGROUND: black; COLOR: lime; mso-highlight: black">Enter Demo dector. method, i = 1, objName = copied d</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt; COLOR: lime">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt; COLOR: lime">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">与</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">C#</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">不同，在</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">C++</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中，对象声明的时候就已经执行了构造函数，比如上面例子的</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">main</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">函数中的第一行，</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">Demo d</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，从屏幕上的输出来看，这个时候</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">Demo class</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的默认构造函数会被调用。</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">接下来的一行代码调用，引出了很有趣的情况，当然也隐藏着不小的问题。这行代码造成了一次构造函数调用，一次拷贝构造函数调用和两次析构函数调用。让我们来具体分析一下：第一次调用构造函数很容易理解，因为在</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">testMethod1</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中我们声明了</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">Demo d(0)</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，退出</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">testMethod1</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，函数的返回值要赋值给变量</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">d2</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，这个时候，</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">d2</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">被拷贝构造函数重新构造了一次。接着</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">testMethod1</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中构造的局部变量被析构，然后，居然拷贝构造函数构造的对象也被析构？等等，看完所有输出，我们发现，</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">objName = copied d</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的对象被析构两次，而</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">objName = Default obj</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的对象被构造出之后没有被析构，这里隐藏了很严重的问题，有可能导致内存泄漏、句柄不能被正确关闭等等。另外，拷贝构造函数的执行可能导致潜在的效率问题，考虑一个包含巨大矩阵的对象，</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">copy</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">这个对象会怎么样？</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">接下来的一行代码，</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">testMethod0</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">返回一个对象的引用，当然不会导致拷贝构造函数被调用，但是，这样也是有问题的，在函数中声明的局部变量在函数执行完成的时候会被析构，那么直接返回局部变量就可能会出现问题。</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">testMethod0</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">退出以后，他内部的</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">Demo</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">对象就会自动析构，外面对它的引用当然也无法指向正确的对象了，所以后面程序打印</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">d.i</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的时候，输出了一个莫名其妙的</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">-2</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">效率最好的方法当数返回指针了，它不会导致对象复制，如果使用得当，也不会导致内存泄漏或者句柄泄漏。</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">testMethod2</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">演示了这种情况，当然，你需要手工删除在</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">testMethod2</span>
				<span style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中创建的对象。</span>
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0pt">
				<span lang="EN-US" style="FONT-SIZE: 12pt">
						<o:p> </o:p>
				</span>
		</p>
<img src ="http://www.blogjava.net/iceboundrock/aggbug/83459.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/iceboundrock/" target="_blank">iceboundrock</a> 2006-11-25 16:08 <a href="http://www.blogjava.net/iceboundrock/archive/2006/11/25/83459.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C++中麻烦的const（1）</title><link>http://www.blogjava.net/iceboundrock/archive/2006/11/22/82825.html</link><dc:creator>iceboundrock</dc:creator><author>iceboundrock</author><pubDate>Wed, 22 Nov 2006 09:03:00 GMT</pubDate><guid>http://www.blogjava.net/iceboundrock/archive/2006/11/22/82825.html</guid><wfw:comment>http://www.blogjava.net/iceboundrock/comments/82825.html</wfw:comment><comments>http://www.blogjava.net/iceboundrock/archive/2006/11/22/82825.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/iceboundrock/comments/commentRss/82825.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/iceboundrock/services/trackbacks/82825.html</trackback:ping><description><![CDATA[
		<p>关于const，C++的const是一个非常非常麻烦的关键字，但是如果你不用，也会带来一些麻烦。</p>
		<p>下面一段简单的程序，演示了const变量，const指针的奇妙关系</p>
		<p> </p>
		<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
				<span style="COLOR: #008080"> 1</span>
				<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				<span style="COLOR: #000000">#include </span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">stdafx.h</span>
				<span style="COLOR: #000000">"</span>
				<span style="COLOR: #000000">
						<br />
				</span>
				<span style="COLOR: #008080"> 2</span>
				<span style="COLOR: #000000">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
				</span>
				<span style="COLOR: #008080"> 3</span>
				<span style="COLOR: #000000">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
				</span>
				<span style="COLOR: #008080"> 4</span>
				<span style="COLOR: #000000">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> _tmain(</span>
				<span style="COLOR: #0000ff">int</span>
				<span style="COLOR: #000000"> argc, _TCHAR</span>
				<span style="COLOR: #000000">*</span>
				<span style="COLOR: #000000"> argv[])<br /></span>
				<span style="COLOR: #008080"> 5</span>
				<span style="COLOR: #000000">
						<img id="Codehighlighter1_59_506_Open_Image" onclick="this.style.display='none'; Codehighlighter1_59_506_Open_Text.style.display='none'; Codehighlighter1_59_506_Closed_Image.style.display='inline'; Codehighlighter1_59_506_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" />
						<img id="Codehighlighter1_59_506_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_59_506_Closed_Text.style.display='none'; Codehighlighter1_59_506_Open_Image.style.display='inline'; Codehighlighter1_59_506_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" />
				</span>
				<span id="Codehighlighter1_59_506_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff">
						<img src="http://www.blogjava.net/images/dot.gif" />
				</span>
				<span id="Codehighlighter1_59_506_Open_Text">
						<span style="COLOR: #000000">{<br /></span>
						<span style="COLOR: #008080"> 6</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">const</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> constInt1 </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">1</span>
						<span style="COLOR: #000000">;<br /></span>
						<span style="COLOR: #008080"> 7</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								<br />
						</span>
						<span style="COLOR: #008080"> 8</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">const</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">constIntPoint </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> NULL;<br /></span>
						<span style="COLOR: #008080"> 9</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								<br />
						</span>
						<span style="COLOR: #008080">10</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">IntPoint </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> NULL;<br /></span>
						<span style="COLOR: #008080">11</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								<br />
						</span>
						<span style="COLOR: #008080">12</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> constIntPoint </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">&amp;</span>
						<span style="COLOR: #000000">constInt1;<br /></span>
						<span style="COLOR: #008080">13</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								<br />
						</span>
						<span style="COLOR: #008080">14</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">const</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> constInt2 </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">2</span>
						<span style="COLOR: #000000">;<br /></span>
						<span style="COLOR: #008080">15</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								<br />
						</span>
						<span style="COLOR: #008080">16</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">int</span>
						<span style="COLOR: #000000"> Int3 </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">3</span>
						<span style="COLOR: #000000">;<br /></span>
						<span style="COLOR: #008080">17</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> <br /></span>
						<span style="COLOR: #008080">18</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
						<span style="COLOR: #008000">//</span>
						<span style="COLOR: #008000">IntPoint = &amp;constInt2; </span>
						<span style="COLOR: #008000">//</span>
						<span style="COLOR: #008000">Error 1</span>
						<span style="COLOR: #008000">
								<br />
						</span>
						<span style="COLOR: #008080">19</span>
						<span style="COLOR: #008000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">20</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								<br />
						</span>
						<span style="COLOR: #008080">21</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> constIntPoint </span>
						<span style="COLOR: #000000">=</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">&amp;</span>
						<span style="COLOR: #000000">Int3;<br /></span>
						<span style="COLOR: #008080">22</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								<br />
						</span>
						<span style="COLOR: #008080">23</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
						<span style="COLOR: #008000">//</span>
						<span style="COLOR: #008000">(*constIntPoint)++; </span>
						<span style="COLOR: #008000">//</span>
						<span style="COLOR: #008000">Error 2</span>
						<span style="COLOR: #008000">
								<br />
						</span>
						<span style="COLOR: #008080">24</span>
						<span style="COLOR: #008000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
						</span>
						<span style="COLOR: #000000">
								<br />
						</span>
						<span style="COLOR: #008080">25</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> printf(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">constInt1=%d\r\n</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">, constInt1);<br /></span>
						<span style="COLOR: #008080">26</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> printf(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">constInt2=%d\r\n</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">, constInt2);<br /></span>
						<span style="COLOR: #008080">27</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> printf(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">Int3=%d\r\n</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">, Int3);<br /></span>
						<span style="COLOR: #008080">28</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />
								<br />
						</span>
						<span style="COLOR: #008080">29</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> printf(</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">constIntPoint point to %d\r\n</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">, </span>
						<span style="COLOR: #000000">*</span>
						<span style="COLOR: #000000">constIntPoint);<br /></span>
						<span style="COLOR: #008080">30</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /> </span>
						<span style="COLOR: #0000ff">return</span>
						<span style="COLOR: #000000"> </span>
						<span style="COLOR: #000000">0</span>
						<span style="COLOR: #000000">;<br /></span>
						<span style="COLOR: #008080">31</span>
						<span style="COLOR: #000000">
								<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span>
				</span>
				<span style="COLOR: #000000">
						<br />
				</span>
				<span style="COLOR: #008080">32</span>
				<span style="COLOR: #000000">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<br />
				</span>
				<span style="COLOR: #008080">33</span>
				<span style="COLOR: #000000">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
				</span>
		</div>
		<p>
				<br />最简单最清晰的const使用方法就是声明const变量了，变量需要在生命的地方立即初始化，初始化完成之后就不能再改了。</p>
		<p>如果你用同样的思路来看待const指针，你会发现你错的很严重，你看，这个constIntPoint换了几个目标依然生龙活虎，编译器很愉快的接受了这段代码，连个warn都没有。<br />原来const指针是指向const变量的指针，而不是说指针本身是const的。无</p>
		<p>ok，const变量不能直接修改，难道我取到他的地址，再来修改都不行么？不行，编译器会直接告诉你，无法把一个const的指针转换成普通指针，<br /><br />Error 1 error C2440: '=' : cannot convert from 'const int *__w64 ' to 'int *' </p>
		<p>论一个变量原来是否被声明成const，你用一个const指针指向它，然后使用*运算符号取出这个变量试图进行修改的操作都是不允许的，参考代码中被注释掉的Error2。<br /><br />Error 2 error C3892: 'constIntPoint' : you cannot assign to a variable that is const <br /></p>
<img src ="http://www.blogjava.net/iceboundrock/aggbug/82825.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/iceboundrock/" target="_blank">iceboundrock</a> 2006-11-22 17:03 <a href="http://www.blogjava.net/iceboundrock/archive/2006/11/22/82825.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>重拾C++</title><link>http://www.blogjava.net/iceboundrock/archive/2006/11/22/82813.html</link><dc:creator>iceboundrock</dc:creator><author>iceboundrock</author><pubDate>Wed, 22 Nov 2006 08:34:00 GMT</pubDate><guid>http://www.blogjava.net/iceboundrock/archive/2006/11/22/82813.html</guid><wfw:comment>http://www.blogjava.net/iceboundrock/comments/82813.html</wfw:comment><comments>http://www.blogjava.net/iceboundrock/archive/2006/11/22/82813.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/iceboundrock/comments/commentRss/82813.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/iceboundrock/services/trackbacks/82813.html</trackback:ping><description><![CDATA[自从上次项目中使用C++到现在，已经有一年半没有再碰过C++了。虽然C++依旧是我心中最向往去使用的语言。<br />打算借着这次复习数据结构与算法的机会重拾C++。今天做了两个容器类，发现很多基础语法的东西我都已记得经模棱两可了，sigh，看来真是要努力才行了。<img src ="http://www.blogjava.net/iceboundrock/aggbug/82813.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/iceboundrock/" target="_blank">iceboundrock</a> 2006-11-22 16:34 <a href="http://www.blogjava.net/iceboundrock/archive/2006/11/22/82813.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>为什么C++编译器不能支持对模板的分离式编译（ZT）</title><link>http://www.blogjava.net/iceboundrock/archive/2006/10/08/73771.html</link><dc:creator>iceboundrock</dc:creator><author>iceboundrock</author><pubDate>Sun, 08 Oct 2006 05:31:00 GMT</pubDate><guid>http://www.blogjava.net/iceboundrock/archive/2006/10/08/73771.html</guid><wfw:comment>http://www.blogjava.net/iceboundrock/comments/73771.html</wfw:comment><comments>http://www.blogjava.net/iceboundrock/archive/2006/10/08/73771.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/iceboundrock/comments/commentRss/73771.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/iceboundrock/services/trackbacks/73771.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 转贴自：http://blog.csdn.net/pongba/archive/2003/10/24/19130.aspx，作者：刘未鹏 首先，C++标准中提到，一个编译单元[translation unit]是指一个.cpp文件以及它所include的所有.h文件，.h文件里的代码将会被扩展到包含它的.cpp文件里，然后编译器编译该.cpp文件为一个.obj文件，后者拥有PE[Portable ...&nbsp;&nbsp;<a href='http://www.blogjava.net/iceboundrock/archive/2006/10/08/73771.html'>阅读全文</a><img src ="http://www.blogjava.net/iceboundrock/aggbug/73771.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/iceboundrock/" target="_blank">iceboundrock</a> 2006-10-08 13:31 <a href="http://www.blogjava.net/iceboundrock/archive/2006/10/08/73771.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Windows系统常用免费软件</title><link>http://www.blogjava.net/iceboundrock/archive/2006/09/25/71835.html</link><dc:creator>iceboundrock</dc:creator><author>iceboundrock</author><pubDate>Mon, 25 Sep 2006 14:13:00 GMT</pubDate><guid>http://www.blogjava.net/iceboundrock/archive/2006/09/25/71835.html</guid><wfw:comment>http://www.blogjava.net/iceboundrock/comments/71835.html</wfw:comment><comments>http://www.blogjava.net/iceboundrock/archive/2006/09/25/71835.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/iceboundrock/comments/commentRss/71835.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/iceboundrock/services/trackbacks/71835.html</trackback:ping><description><![CDATA[办公软件，wps 2005个人版。 <br />电子邮件：Thunderbird <br />开发工具：<br />.net 1.1就用SharpDevelop<br />.net 2.0就用VS Express系列<br />辅助工具有：Reflector看.net类库、Snipt Code<br />java和j2ee用Eclipse+WTP。<br />.net framewok SDK、Windows SDK和jdk也都是免费的，里面也有文档。<br />文本比较工具用WinMerge<br /><br />版本控制：<br />CVS客户端用Eclipse内置的或者TortoiseCVS<br />SVN客户端用SVN的Eclipse插件和TortoiseSVN<br />CVS服务器用CVS NT<br />SVN服务器用SVN<br /><br />Debug Release版本或者生产环境的.net程序或者C++程序程序可以用Windbg。SysInternals的一系列工具也是排错利器啊。<br />压力测试用JMeter和MS Web Stress Tool都还不错。<br />查看IE中的Http头可以用ieHttpHeaders<br /><br />抓取网络包可以用Ethereal<br /> <br />文本编辑器：Notepad++、Notepad2 ，如果编辑Python代码，用Vim更好。<br /><br />浏览图片就用系统内置的那个，Picasc2也不错，图片处理可以用MS Paint、Paint.Net或者GIMP。<br /><br />听歌用foobar2000 ，Winamp也是免费的，Windows Media Player和iTunes虽然比较大，但是功能齐全也算不错的选择。<br />压缩解压缩用：7-zip<br />聊天就更多了，msn/qq/gtalk都是免费的。下载用FlashGet和Gigaget。 <br />任务列表用的是codeproject上的一个免费工具,todolist。 制定项目计划可以用openworkbench。<br />看文档一般都是chm的，pdf还是用acrobat reader 7.08<br /><br />连接Telnet服务器或者SSH服务器可以用putty。FTP、SFTP客户端用WinSCP。<br />Mindmap用FreeMind<br /><img src ="http://www.blogjava.net/iceboundrock/aggbug/71835.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/iceboundrock/" target="_blank">iceboundrock</a> 2006-09-25 22:13 <a href="http://www.blogjava.net/iceboundrock/archive/2006/09/25/71835.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>商战小说</title><link>http://www.blogjava.net/iceboundrock/archive/2006/08/31/66924.html</link><dc:creator>iceboundrock</dc:creator><author>iceboundrock</author><pubDate>Thu, 31 Aug 2006 10:38:00 GMT</pubDate><guid>http://www.blogjava.net/iceboundrock/archive/2006/08/31/66924.html</guid><wfw:comment>http://www.blogjava.net/iceboundrock/comments/66924.html</wfw:comment><comments>http://www.blogjava.net/iceboundrock/archive/2006/08/31/66924.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/iceboundrock/comments/commentRss/66924.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/iceboundrock/services/trackbacks/66924.html</trackback:ping><description><![CDATA[
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<a href="http://book.sina.com.cn/nzt/lit/quanziquantao/index.shtml">
								<font color="#800080">
										<span lang="EN-US" style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
												<span lang="EN-US">圈子<span lang="EN-US">圈套</span></span>
										</span>1</font>
						</a>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<a href="http://book.sina.com.cn/nzt/lit/quanziquantao2/index.shtml">
								<font color="#800080">
										<span lang="EN-US" style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
												<span lang="EN-US">圈子<span lang="EN-US">圈套</span></span>
										</span>2</font>
						</a>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<a href="http://book.sina.com.cn/nzt/fin/quantaoxuanji/index.shtml">
								<font color="#800080">
										<span lang="EN-US" style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
												<span lang="EN-US">圈套<span lang="EN-US">玄机</span></span>
										</span>
										<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>
										<o:p>
										</o:p>
								</font>
						</a>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<a href="http://book.sina.com.cn/nzt/lit/shuying/index.shtml">
								<span lang="EN-US" style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">
										<span lang="EN-US">
												<font color="#800080">输赢</font>
										</span>
								</span>
						</a>
				</span>
		</p>
<img src ="http://www.blogjava.net/iceboundrock/aggbug/66924.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/iceboundrock/" target="_blank">iceboundrock</a> 2006-08-31 18:38 <a href="http://www.blogjava.net/iceboundrock/archive/2006/08/31/66924.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>再谈在Windows中配置Apache 2.0+php5+MySQL5</title><link>http://www.blogjava.net/iceboundrock/archive/2006/08/10/62695.html</link><dc:creator>iceboundrock</dc:creator><author>iceboundrock</author><pubDate>Wed, 09 Aug 2006 17:44:00 GMT</pubDate><guid>http://www.blogjava.net/iceboundrock/archive/2006/08/10/62695.html</guid><wfw:comment>http://www.blogjava.net/iceboundrock/comments/62695.html</wfw:comment><comments>http://www.blogjava.net/iceboundrock/archive/2006/08/10/62695.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/iceboundrock/comments/commentRss/62695.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/iceboundrock/services/trackbacks/62695.html</trackback:ping><description><![CDATA[
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">    网络上对于这个问题的解决方案还是非常多的，但是大多都要求</span>
				<span lang="EN-US">copy</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">一些文件到</span>
				<span lang="EN-US">Windows</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">或者</span>
				<span lang="EN-US">System32</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">目录中，显得不够优雅。</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我参考了</span>
				<span lang="EN-US">php</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的用户手册和</span>
				<span lang="EN-US">MySQL</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的网站，找到了一个不需要拷贝文件的解决方案。<br />    首先是准备步骤，具体如下：</span>
				<span lang="EN-US">
						<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">1.</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">将</span>
				<span lang="EN-US">ph<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /?><st1:chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899">p 5.1.4</st1:chsdate></span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的压缩包解压到</span>
				<span lang="EN-US">D:\php</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，复制</span>
				<span lang="EN-US">php.ini-recommended</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">为</span>
				<span lang="EN-US">php.ini<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">2.</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">安装</span>
				<span lang="EN-US">apache<st1:chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899">2.0.59</st1:chsdate><o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">3.</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">安装</span>
				<span lang="EN-US">MySQL5<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">4.</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">备份“</span>
				<span lang="EN-US">Apache Group\Apache2\conf</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”文件夹</span>
				<span lang="EN-US">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">5.</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">从</span>
				<span lang="EN-US">MySQL</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">网站下载</span>
				<span lang="EN-US">MySQL Connector/PHP</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的文件，下载</span>
				<span lang="EN-US">mysql extension (PH<st1:chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899">P 5.1.4</st1:chsdate>) for MySQL Server 5.0.22</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的那个包。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">下面说一下如何配置。</span>
		</p>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">修改</span>
						<span lang="EN-US">Apache</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的</span>
						<span lang="EN-US">httpd.conf</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">文件</span>
				</font>
		</h3>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'">
						<span style="mso-list: Ignore">1.<span style="FONT: 7pt 'Times New Roman'">       </span></span>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">加入</span>
				<span lang="EN-US">PHPIniDir</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">变量；设定加载</span>
				<span lang="EN-US">php5</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">模块的路径；设定</span>
				<span lang="EN-US">.php</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">文件类型的处理方式。具体代码如下：</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 17.95pt; mso-char-indent-count: 1.71">
				<span lang="EN-US">#php config<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 17.95pt; mso-char-indent-count: 1.71">
				<span lang="EN-US">LoadModule php5_module "d:/php/php5apache2.dll"<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 17.95pt; mso-char-indent-count: 1.71">
				<span lang="EN-US">AddType application/x-httpd-php .php<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 17.95pt; mso-char-indent-count: 1.71">
				<span lang="EN-US">PHPIniDir "D:/php/"</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l1 level1 lfo1; tab-stops: list 18.0pt">
				<span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'">
						<span style="mso-list: Ignore">2.<span style="FONT: 7pt 'Times New Roman'">       </span></span>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">将</span>
				<span lang="EN-US">index.php</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">加入</span>
				<span lang="EN-US">DirectoryIndex</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">变量中。具体代码如下：</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 17.95pt; mso-char-indent-count: 1.71">
				<span lang="EN-US">DirectoryIndex index.html index.html.var index.php</span>
		</p>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">更新</span>
						<span lang="EN-US">MySQL Connector/PHP</span>
				</font>
		</h3>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">解压</span>
				<span lang="EN-US">MySQL Connector/PHP</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">压缩包到</span>
				<span lang="EN-US">D:\php</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，并将</span>
				<span lang="EN-US">php_mysql.dll</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">拷贝到</span>
				<span lang="EN-US">D:\php\ext</span>
		</p>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">修改</span>
						<span lang="EN-US">php.ini<o:p></o:p></span>
				</font>
		</h3>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo2; tab-stops: list 18.0pt">
				<span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'">
						<span style="mso-list: Ignore">1．<span style="FONT: 7pt 'Times New Roman'">  </span></span>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">修改</span>
				<span lang="EN-US">include_path = ".;d:\php\PEAR"</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo2; tab-stops: list 18.0pt">
				<span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'">
						<span style="mso-list: Ignore">2．<span style="FONT: 7pt 'Times New Roman'">  </span></span>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">修改</span>
				<span lang="EN-US">extension_dir = "D:\php\ext"</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo2; tab-stops: list 18.0pt">
				<span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'">
						<span style="mso-list: Ignore">3．<span style="FONT: 7pt 'Times New Roman'">  </span></span>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">取消</span>
				<span lang="EN-US">extension=php_mysql.dll</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">前面的分号</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo2; tab-stops: list 18.0pt">
				<span lang="EN-US" style="mso-fareast-font-family: 'Times New Roman'">
						<span style="mso-list: Ignore">4．<span style="FONT: 7pt 'Times New Roman'">  </span></span>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">取消</span>
				<span lang="EN-US">extension=php_gd2.dll</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">前面的分号</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">配置到这里就完成了，为了测试效果，可以在“</span>
				<span lang="EN-US">Apache Group\Apache2\htdocs</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”文件夹中建立一个名为</span>
				<span lang="EN-US">phpinfo.php</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的文件，内容如下：</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">&lt;?php<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 27pt; mso-char-indent-count: 2.57">
				<span lang="EN-US">$link=mysql_connect('localhost','test','test'); //</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">用户和密码</span>
				<span lang="EN-US">,</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">请根据你自己的情况改好</span>
				<span lang="EN-US">
						<o:p>
						</o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 27pt; mso-char-indent-count: 2.57">
				<span lang="EN-US">if(!$link) echo "fail";<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 27pt; mso-char-indent-count: 2.57">
				<span lang="EN-US">else echo "success";<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 27pt; mso-char-indent-count: 2.57">
				<span lang="EN-US">mysql_close();<o:p></o:p></span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 27pt; mso-char-indent-count: 2.57">
				<span lang="EN-US">echo phpinfo(); </span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">?&gt;</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<o:p> </o:p>
				</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">然后访问</span>
				<span lang="EN-US">
						<a href="http://localhost/phptest.php">http://localhost/phpinfo.php</a>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，如果页面最顶端上打印出</span>
				<span lang="EN-US">success</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">，说明设定成功，否则可以根据</span>
				<span lang="EN-US">phpinfo</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的结果看看问题所在。</span>
		</p>
		<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<o:p> </o:p>
				</span>
		</p>
		<p> </p>
<img src ="http://www.blogjava.net/iceboundrock/aggbug/62695.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/iceboundrock/" target="_blank">iceboundrock</a> 2006-08-10 01:44 <a href="http://www.blogjava.net/iceboundrock/archive/2006/08/10/62695.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一个事件的基类，目标为改进j2sdk中的Observer</title><link>http://www.blogjava.net/iceboundrock/archive/2006/04/27/43442.html</link><dc:creator>iceboundrock</dc:creator><author>iceboundrock</author><pubDate>Wed, 26 Apr 2006 16:02:00 GMT</pubDate><guid>http://www.blogjava.net/iceboundrock/archive/2006/04/27/43442.html</guid><wfw:comment>http://www.blogjava.net/iceboundrock/comments/43442.html</wfw:comment><comments>http://www.blogjava.net/iceboundrock/archive/2006/04/27/43442.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/iceboundrock/comments/commentRss/43442.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/iceboundrock/services/trackbacks/43442.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 1								//欢迎您的点评								  2																								  3																		import				 java.lang.reflect.Method;				  4																		import				 java.util.Array...&nbsp;&nbsp;<a href='http://www.blogjava.net/iceboundrock/archive/2006/04/27/43442.html'>阅读全文</a><img src ="http://www.blogjava.net/iceboundrock/aggbug/43442.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/iceboundrock/" target="_blank">iceboundrock</a> 2006-04-27 00:02 <a href="http://www.blogjava.net/iceboundrock/archive/2006/04/27/43442.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一个枚举类型的基类for j2se 1.4</title><link>http://www.blogjava.net/iceboundrock/archive/2006/04/26/43427.html</link><dc:creator>iceboundrock</dc:creator><author>iceboundrock</author><pubDate>Wed, 26 Apr 2006 14:09:00 GMT</pubDate><guid>http://www.blogjava.net/iceboundrock/archive/2006/04/26/43427.html</guid><wfw:comment>http://www.blogjava.net/iceboundrock/comments/43427.html</wfw:comment><comments>http://www.blogjava.net/iceboundrock/archive/2006/04/26/43427.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/iceboundrock/comments/commentRss/43427.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/iceboundrock/services/trackbacks/43427.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 1								import				 java.util.HashMap;				 2																								 3																								/** */										/**																										 4														 ...&nbsp;&nbsp;<a href='http://www.blogjava.net/iceboundrock/archive/2006/04/26/43427.html'>阅读全文</a><img src ="http://www.blogjava.net/iceboundrock/aggbug/43427.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/iceboundrock/" target="_blank">iceboundrock</a> 2006-04-26 22:09 <a href="http://www.blogjava.net/iceboundrock/archive/2006/04/26/43427.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>