锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久国产精品国产自线拍免费,久久笫一福利免费导航 ,亚洲国产精品久久久久网站http://www.shnenglu.com/wolf/category/6280.htmlzh-cnSat, 28 Aug 2010 08:19:22 GMTSat, 28 Aug 2010 08:19:22 GMT60甯歌璁捐妯″紡涔嬫娊璞″伐鍘傛ā寮?/title><link>http://www.shnenglu.com/wolf/articles/122611.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Tue, 24 Aug 2010 16:59:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/122611.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/122611.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/122611.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/122611.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/122611.html</trackback:ping><description><![CDATA[涔嬪墠浠嬬粛榪囩畝鍗曞伐鍘傛ā寮忋佸伐鍘傛ā寮忥紝榪欒妭浠嬬粛涓嬪伐鍘傚鏃忕殑鏈鍚庝竴縐嶈璁℃ā寮?-鎶借薄宸ュ巶璁捐妯″紡銆? <div>瀹為檯涓婏紝濡傛灉瀵瑰墠涓ょ妯″紡鐔熺粌鎺屾彙鐨勮瘽錛岃繖涓浉瀵規(guī)潵璇存渶澶嶆潅鐨勮璁℃ā寮忎篃涓嶉毦鐞嗚В錛屽畠涔熷彲浠ョ悊瑙d負鏄湪宸ュ巶妯″紡鍩虹涓婄殑鍗囩駭銆?/div> <div>鎴戜滑鐭ラ亾錛屽伐鍘傛ā寮忓皢涓涓被鐨勫疄渚嬪寲寤惰繜鍒板瓙綾伙紝鍏蜂綋浜у搧綾葷敱鍏蜂綋宸ュ巶綾繪潵瀹炰緥鍖栵紝浣嗚繖縐嶅叧緋誨熀鏈槸涓瀵逛竴鐨勶紝涔熷氨鏄涓涓娊璞″伐鍘傜被瀵瑰簲涓涓娊璞′駭鍝佺被錛屽涓叿浣撳伐鍘傜被瀵瑰簲澶氫釜鍏蜂綋浜у搧綾匯傚綊綰蟲潵璇村氨鏄竴涓伐鍘傛棌鍙湇鍔′簬涓涓駭鍝佹棌銆?/div> <div>鎶借薄宸ュ巶妯″紡瀹炵幇浜嗗伐鍘傜被涓庝駭鍝佺被涓瀵瑰鐨勫叧緋伙紝鎴栬呰宸ュ巶鏃忎笌浜у搧鏃忓疄鐜頒簡涓瀵瑰鐨勫叧緋匯傚畠浠殑鍖哄埆鍙互鐢ㄤ竴瀹跺伐鍘傛潵褰㈠錛屽伐鍘傛ā寮忓氨鍍忔槸榪欏宸ュ巶鐨勪竴鏉$敓浜х嚎錛岃屾娊璞″伐鍘傛ā寮忓氨濂芥瘮鏁翠釜宸ュ巶鐨勬墍鏈夌敓浜х嚎銆?/div> <div><br></div> <img src ="http://www.shnenglu.com/wolf/aggbug/122611.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2010-08-25 00:59 <a href="http://www.shnenglu.com/wolf/articles/122611.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>甯歌璁捐妯″紡涔嬩唬鐞嗘ā寮忥紙Proxy錛?/title><link>http://www.shnenglu.com/wolf/articles/124599.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Tue, 24 Aug 2010 16:37:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/124599.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/124599.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/124599.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/124599.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/124599.html</trackback:ping><description><![CDATA[<p><strong>姒傚康<br></strong>浠g悊榪欎釜璇嶅鎴戜滑鏉ヨ闈炲父鐔熸?zhèn)夊Q屾瘮濡備笂緗戠粡甯鎬嬌鐢ㄧ殑浠g悊鏈嶅姟鍣紝榪樻湁閿鍞唬鐞嗗晢絳夈傚氨鏄鎴蜂笌鐩爣涔嬮棿鐨勬ˉ姊併?br>璁捐妯″紡涓殑浠g悊妯″紡錛圥roxy錛夋槸榪欐牱瀹氫箟鐨勶細涓哄叾浠栧璞℃彁渚涗竴縐嶄唬鐞嗕互鎺у埗瀵硅繖涓璞$殑璁塊棶銆?br>鑻ヨ涓哄叾浠栧璞℃彁渚涗唬鐞嗘湇鍔★紝閭d箞棣栧厛鏈韓涔熻鍏鋒湁涓庤浠g悊瀵硅薄鍚屾牱鐨勬柟娉曪紝閭d箞榪欐牱鍦ㄨ闂椂鎵嶈兘鐪熸璧峰埌錛堥忔槑錛変唬鐞嗙殑浣滅敤銆?br>鎵浠ヤ唬鐞嗙被涓鑸悓琚唬鐞嗙被鏄戶鎵夸簬鍚屼竴涓被鐨勫厔寮熺被錛屽尯鍒氨鏄粬鏄負鍒漢鏈嶅姟鐨勩?br><br>榪欐牱璇存潵錛岃〃闈㈢湅浠g悊寰堥鍏夛紝鍟ラ兘寰楅氳繃浠栵紝濂藉儚娌′粬涓嶈浼肩殑錛屽叾瀹炰粬灝辨槸涓窇鍫傜殑錛?/p> <p><strong><br>緇勬垚閮ㄥ垎</strong><br>1.鎶借薄涓婚錛氬熀綾伙紝澹版槑浜嗕唬鐞嗗璞″拰鐪熷疄瀵硅薄鐨勫叡鍚岀偣錛?br>2.鐪熷疄涓婚錛氱湡姝i渶瑕佽璋冪敤鐨勫璞★紱<br>3.浠g悊瀵硅薄錛氫唬鐞嗙湡瀹炲璞$殑瀵硅薄銆?/p> <p><br><strong>鍒嗙被<br></strong>1.榪滅▼浠g悊錛氫篃灝辨槸涓轟竴涓璞″湪涓嶅悓鐨勫湴鍧絀洪棿鎻愪緵灞閮ㄤ唬琛紝榪欐牱鍙互闅愯棌涓涓璞″瓨鍦ㄤ簬涓嶅悓鍦板潃絀洪棿鐨勪簨瀹炪傝繖涓笉鍚岀殑鍦板潃絀洪棿鍙互鏄湪鏈満鍣ㄤ笂錛屼篃鍙互鍦ㄥ彟涓鍙版満鍣ㄤ腑銆?br>2.铏氭嫙浠g悊錛氭槸鏍規(guī)嵁闇瑕佸垱寤哄紑閿寰堝ぇ鐨勫璞★紝閫氳繃瀹冩潵瀛樻斁瀹炰緥鍖栭渶瑕佸緢闀挎椂闂寸殑鐪熷疄瀵硅薄錛屼嬌鍏跺彧鏈夊湪鐪熸闇瑕佹椂鎵嶈鍒涘緩銆?br>3.瀹夊叏浠g悊錛氫篃鍙繚鎶や唬鐞嗭紝鐢ㄦ潵鎺у埗鐪熷疄瀵硅薄璁塊棶鏃剁殑鏉冮檺錛屽鏋滄湁蹇呰鐨勮瘽錛屽彲浠ョ粰涓嶅悓璋冪敤鑰呮彁渚涗笉鍚岀殑鏉冮檺銆?br>4.鏅鴻兘鎸囧紩錛氭槸鎸囧綋璋冪敤鐪熷疄瀵硅薄鏃訛紝浠g悊澶勭悊鍙﹀涓浜涗簨錛屾瘮濡傝褰曞姝ゅ璞$殑璋冪敤嬈℃暟絳夈?br>5.鍐欐椂鎷瘋礉錛氳櫄鎷熶唬鐞嗙殑涓縐嶏紝鎶婂鍒舵帹榪熷埌鍙湁瀹㈡埛鐨勯渶瑕佹椂鎵嶈繘琛屻?br>6.緙撳瓨浠g悊錛氫負鏌愪竴涓洰鏍囩殑鎿嶄綔緇撴灉鎻愪緵涓存椂瀛樺偍絀洪棿錛屼互渚垮叾浠栧鎴風(fēng)殑鍙互鍏變韓璁塊棶錛屾湁鐐圭紦瀛樼殑鍛抽亾銆?br>7.闃茬伀澧欎唬鐞嗭細淇濇姢瀵硅薄錛屼笉璁╃敤鎴瘋闂紝瀹夊叏浠g悊鐨勭壒渚嬨?br>8.鍚屾浠g悊錛氬彲浠ヨ鍑犱釜鐢ㄦ埛鍚屾椂璁塊棶鍚屼竴涓璞¤屼笉浜х敓鍐茬獊銆?br>甯哥敤鐨勬槸鍓嶅洓縐嶄唬鐞嗘柟寮忋?/p> <p><strong>UML綾誨浘<br></strong> <img height=500 alt="" src="http://www.shnenglu.com/images/cppblog_com/wolf/Proxy.jpg" width=660 border=0><br><br><strong>瀹炰緥浠g爜<br></strong>1錛塒roxy.h<br></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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#ifndef _PROXY_H<br></span><span style="COLOR: #008080"> 2</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">#define</span><span style="COLOR: #000000"> _PROXY_H</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080"> 3</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 4</span><span style="COLOR: #000000"><img id=Codehighlighter1_35_65_Open_Image onclick="this.style.display='none'; Codehighlighter1_35_65_Open_Text.style.display='none'; Codehighlighter1_35_65_Closed_Image.style.display='inline'; Codehighlighter1_35_65_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_35_65_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_35_65_Closed_Text.style.display='none'; Codehighlighter1_35_65_Open_Image.style.display='inline'; Codehighlighter1_35_65_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_35_65_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">/**/</span><span id=Codehighlighter1_35_65_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000">@brief Abstract Base Class.</span><span style="COLOR: #808080"></span></span><br><span style="COLOR: #008080"> 5</span><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> Subject <br></span><span style="COLOR: #008080"> 6</span><span style="COLOR: #000000"><img id=Codehighlighter1_81_166_Open_Image onclick="this.style.display='none'; Codehighlighter1_81_166_Open_Text.style.display='none'; Codehighlighter1_81_166_Closed_Image.style.display='inline'; Codehighlighter1_81_166_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_81_166_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_81_166_Closed_Text.style.display='none'; Codehighlighter1_81_166_Open_Image.style.display='inline'; Codehighlighter1_81_166_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_81_166_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_81_166_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080"> 7</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080"> 8</span><span style="COLOR: #000000"><img id=Codehighlighter1_105_106_Open_Image onclick="this.style.display='none'; Codehighlighter1_105_106_Open_Text.style.display='none'; Codehighlighter1_105_106_Closed_Image.style.display='inline'; Codehighlighter1_105_106_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_105_106_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_105_106_Closed_Text.style.display='none'; Codehighlighter1_105_106_Open_Image.style.display='inline'; Codehighlighter1_105_106_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    Subject() </span><span id=Codehighlighter1_105_106_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_105_106_Open_Text><span style="COLOR: #000000">{}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080"> 9</span><span style="COLOR: #000000"><img id=Codehighlighter1_131_132_Open_Image onclick="this.style.display='none'; Codehighlighter1_131_132_Open_Text.style.display='none'; Codehighlighter1_131_132_Closed_Image.style.display='inline'; Codehighlighter1_131_132_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_131_132_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_131_132_Closed_Text.style.display='none'; Codehighlighter1_131_132_Open_Image.style.display='inline'; Codehighlighter1_131_132_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    </span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">~</span><span style="COLOR: #000000">Subject() </span><span id=Codehighlighter1_131_132_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_131_132_Open_Text><span style="COLOR: #000000">{}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> request() </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">12</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">13</span><span style="COLOR: #000000"><img id=Codehighlighter1_170_198_Open_Image onclick="this.style.display='none'; Codehighlighter1_170_198_Open_Text.style.display='none'; Codehighlighter1_170_198_Closed_Image.style.display='inline'; Codehighlighter1_170_198_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_170_198_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_170_198_Closed_Text.style.display='none'; Codehighlighter1_170_198_Open_Image.style.display='inline'; Codehighlighter1_170_198_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_170_198_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">/**/</span><span id=Codehighlighter1_170_198_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000">@brief Real entity class.</span><span style="COLOR: #808080"></span></span><br><span style="COLOR: #008080">14</span><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> RealSubject: </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> Subject <br></span><span style="COLOR: #008080">15</span><span style="COLOR: #000000"><img id=Codehighlighter1_234_319_Open_Image onclick="this.style.display='none'; Codehighlighter1_234_319_Open_Text.style.display='none'; Codehighlighter1_234_319_Closed_Image.style.display='inline'; Codehighlighter1_234_319_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_234_319_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_234_319_Closed_Text.style.display='none'; Codehighlighter1_234_319_Open_Image.style.display='inline'; Codehighlighter1_234_319_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_234_319_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_234_319_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">16</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080">17</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    RealSubject();<br></span><span style="COLOR: #008080">18</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">~</span><span style="COLOR: #000000">RealSubject();<br></span><span style="COLOR: #008080">19</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> request();<br></span><span style="COLOR: #008080">20</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">21</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">22</span><span style="COLOR: #000000"><img id=Codehighlighter1_323_404_Open_Image onclick="this.style.display='none'; Codehighlighter1_323_404_Open_Text.style.display='none'; Codehighlighter1_323_404_Closed_Image.style.display='inline'; Codehighlighter1_323_404_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_323_404_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_323_404_Closed_Text.style.display='none'; Codehighlighter1_323_404_Open_Image.style.display='inline'; Codehighlighter1_323_404_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_323_404_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">/**/</span><span id=Codehighlighter1_323_404_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000">@brief Proxy class, including a pointer of pointing to the Real-entity class. </span><span style="COLOR: #808080"></span></span><br><span style="COLOR: #008080">23</span><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> Proxy: </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> Subject <br></span><span style="COLOR: #008080">24</span><span style="COLOR: #000000"><img id=Codehighlighter1_434_549_Open_Image onclick="this.style.display='none'; Codehighlighter1_434_549_Open_Text.style.display='none'; Codehighlighter1_434_549_Closed_Image.style.display='inline'; Codehighlighter1_434_549_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_434_549_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_434_549_Closed_Text.style.display='none'; Codehighlighter1_434_549_Open_Image.style.display='inline'; Codehighlighter1_434_549_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_434_549_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_434_549_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">25</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080">26</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    Proxy();<br></span><span style="COLOR: #008080">27</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">~</span><span style="COLOR: #000000">Proxy();<br></span><span style="COLOR: #008080">28</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> request();<br></span><span style="COLOR: #008080">29</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">30</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080">31</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    RealSubject</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> m_realSubject;<br></span><span style="COLOR: #008080">32</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">33</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">34</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">#endif</span></div> <br>2錛塒roxy.cpp<br> <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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#include </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Proxy.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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>#include </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080"> 3</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 4</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000"> std;<br></span><span style="COLOR: #008080"> 5</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 6</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>RealSubject::RealSubject()<br></span><span style="COLOR: #008080"> 7</span><span style="COLOR: #000000"><img id=Codehighlighter1_89_138_Open_Image onclick="this.style.display='none'; Codehighlighter1_89_138_Open_Text.style.display='none'; Codehighlighter1_89_138_Closed_Image.style.display='inline'; Codehighlighter1_89_138_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_89_138_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_89_138_Closed_Text.style.display='none'; Codehighlighter1_89_138_Open_Image.style.display='inline'; Codehighlighter1_89_138_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_89_138_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_89_138_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080"> 8</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">RealSubject constructor</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080"> 9</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>RealSubject::</span><span style="COLOR: #000000">~</span><span style="COLOR: #000000">RealSubject()<br></span><span style="COLOR: #008080">12</span><span style="COLOR: #000000"><img id=Codehighlighter1_169_217_Open_Image onclick="this.style.display='none'; Codehighlighter1_169_217_Open_Text.style.display='none'; Codehighlighter1_169_217_Closed_Image.style.display='inline'; Codehighlighter1_169_217_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_169_217_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_169_217_Closed_Text.style.display='none'; Codehighlighter1_169_217_Open_Image.style.display='inline'; Codehighlighter1_169_217_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_169_217_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_169_217_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">13</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">RealSubject destructor</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">14</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">15</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">16</span><span style="COLOR: #000000"><img id=Codehighlighter1_220_259_Open_Image onclick="this.style.display='none'; Codehighlighter1_220_259_Open_Text.style.display='none'; Codehighlighter1_220_259_Closed_Image.style.display='inline'; Codehighlighter1_220_259_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_220_259_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_220_259_Closed_Text.style.display='none'; Codehighlighter1_220_259_Open_Image.style.display='inline'; Codehighlighter1_220_259_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_220_259_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">/**/</span><span id=Codehighlighter1_220_259_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000">@brief Real-entity's request method.</span><span style="COLOR: #808080"></span></span><br><span style="COLOR: #008080">17</span><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> RealSubject::request()<br></span><span style="COLOR: #008080">18</span><span style="COLOR: #000000"><img id=Codehighlighter1_288_333_Open_Image onclick="this.style.display='none'; Codehighlighter1_288_333_Open_Text.style.display='none'; Codehighlighter1_288_333_Closed_Image.style.display='inline'; Codehighlighter1_288_333_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_288_333_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_288_333_Closed_Text.style.display='none'; Codehighlighter1_288_333_Open_Image.style.display='inline'; Codehighlighter1_288_333_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_288_333_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_288_333_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">19</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">RealSubject request</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">20</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">21</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">22</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>Proxy::Proxy(): m_realSubject(NULL)<br></span><span style="COLOR: #008080">23</span><span style="COLOR: #000000"><img id=Codehighlighter1_372_415_Open_Image onclick="this.style.display='none'; Codehighlighter1_372_415_Open_Text.style.display='none'; Codehighlighter1_372_415_Closed_Image.style.display='inline'; Codehighlighter1_372_415_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_372_415_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_372_415_Closed_Text.style.display='none'; Codehighlighter1_372_415_Open_Image.style.display='inline'; Codehighlighter1_372_415_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_372_415_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_372_415_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">24</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Proxy constructor</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">25</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">26</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">27</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>Proxy::</span><span style="COLOR: #000000">~</span><span style="COLOR: #000000">Proxy()<br></span><span style="COLOR: #008080">28</span><span style="COLOR: #000000"><img id=Codehighlighter1_434_528_Open_Image onclick="this.style.display='none'; Codehighlighter1_434_528_Open_Text.style.display='none'; Codehighlighter1_434_528_Closed_Image.style.display='inline'; Codehighlighter1_434_528_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_434_528_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_434_528_Closed_Text.style.display='none'; Codehighlighter1_434_528_Open_Image.style.display='inline'; Codehighlighter1_434_528_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_434_528_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_434_528_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">29</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Proxy destructor</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">30</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    delete m_realSubject;<br></span><span style="COLOR: #008080">31</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    m_realSubject </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> NULL;<br></span><span style="COLOR: #008080">32</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">33</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">34</span><span style="COLOR: #000000"><img id=Codehighlighter1_531_564_Open_Image onclick="this.style.display='none'; Codehighlighter1_531_564_Open_Text.style.display='none'; Codehighlighter1_531_564_Closed_Image.style.display='inline'; Codehighlighter1_531_564_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_531_564_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_531_564_Closed_Text.style.display='none'; Codehighlighter1_531_564_Open_Image.style.display='inline'; Codehighlighter1_531_564_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_531_564_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">/**/</span><span id=Codehighlighter1_531_564_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000">@brief Proxy's request method.</span><span style="COLOR: #808080"></span></span><br><span style="COLOR: #008080">35</span><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> Proxy::request()<br></span><span style="COLOR: #008080">36</span><span style="COLOR: #000000"><img id=Codehighlighter1_587_776_Open_Image onclick="this.style.display='none'; Codehighlighter1_587_776_Open_Text.style.display='none'; Codehighlighter1_587_776_Closed_Image.style.display='inline'; Codehighlighter1_587_776_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_587_776_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_587_776_Closed_Text.style.display='none'; Codehighlighter1_587_776_Open_Image.style.display='inline'; Codehighlighter1_587_776_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_587_776_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_587_776_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">37</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Proxy request</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">38</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">39</span><span style="COLOR: #000000"><img id=Codehighlighter1_631_669_Open_Image onclick="this.style.display='none'; Codehighlighter1_631_669_Open_Text.style.display='none'; Codehighlighter1_631_669_Closed_Image.style.display='inline'; Codehighlighter1_631_669_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_631_669_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_631_669_Closed_Text.style.display='none'; Codehighlighter1_631_669_Open_Image.style.display='inline'; Codehighlighter1_631_669_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    </span><span id=Codehighlighter1_631_669_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">/**/</span><span id=Codehighlighter1_631_669_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000">@brief Construct it when necessary.</span><span style="COLOR: #808080"></span></span><br><span style="COLOR: #008080">40</span><img id=Codehighlighter1_694_743_Open_Image onclick="this.style.display='none'; Codehighlighter1_694_743_Open_Text.style.display='none'; Codehighlighter1_694_743_Closed_Image.style.display='inline'; Codehighlighter1_694_743_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_694_743_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_694_743_Closed_Text.style.display='none'; Codehighlighter1_694_743_Open_Image.style.display='inline'; Codehighlighter1_694_743_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (</span><span style="COLOR: #000000">!</span><span style="COLOR: #000000">m_realSubject) </span><span id=Codehighlighter1_694_743_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_694_743_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">41</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        m_realSubject </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> RealSubject();<br></span><span style="COLOR: #008080">42</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">43</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">44</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    m_realSubject</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">request();<br></span><span style="COLOR: #008080">45</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div> <br>3錛塎ain.cpp<br> <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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#include </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Proxy.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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>#include </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080"> 3</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 4</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000"> std;<br></span><span style="COLOR: #008080"> 5</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 6</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main()<br></span><span style="COLOR: #008080"> 7</span><span style="COLOR: #000000"><img id=Codehighlighter1_73_183_Open_Image onclick="this.style.display='none'; Codehighlighter1_73_183_Open_Text.style.display='none'; Codehighlighter1_73_183_Closed_Image.style.display='inline'; Codehighlighter1_73_183_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_73_183_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_73_183_Closed_Text.style.display='none'; Codehighlighter1_73_183_Open_Image.style.display='inline'; Codehighlighter1_73_183_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_73_183_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_73_183_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080"> 8</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    Subject</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> proxy </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Proxy();<br></span><span style="COLOR: #008080"> 9</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    proxy</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">request();<br></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    delete proxy;<br></span><span style="COLOR: #008080">12</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    proxy </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> NULL;<br></span><span style="COLOR: #008080">13</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">14</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/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">15</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div> <br> <img src ="http://www.shnenglu.com/wolf/aggbug/124599.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2010-08-25 00:37 <a href="http://www.shnenglu.com/wolf/articles/124599.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>甯歌璁捐妯″紡涔嬪伐鍘傛ā寮忥紙Factory Method錛?/title><link>http://www.shnenglu.com/wolf/articles/122610.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Mon, 09 Aug 2010 16:30:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/122610.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/122610.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/122610.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/122610.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/122610.html</trackback:ping><description><![CDATA[<p>鍓嶉潰宸茬粡浠嬬粛榪囩畝鍗曞伐鍘傛ā寮忥紝騫舵彁鍙婅櫧鐒剁畝鍗曞伐鍘傛ā寮忔湁寰堝浼樼偣錛屼絾鍏剁牬鍧忎簡寮鍙?灝侀棴鍘熷垯錛圤pen-Close Principle錛屽鎵╁睍寮鍙戯紝瀵逛慨鏀瑰叧闂級銆傚嵆姣忓鍔犱竴縐嶇畻娉曪紝閮借瀵瑰伐鍘傜被榪涜淇敼銆?br>鍦ㄨ繖閲屽皢綆鍗曞伐鍘傛ā寮忕◢浣滄敼榪涳紝鏃㈡垚浜嗗伐鍘傛柟娉曟ā寮忋?br>瀹氫箟涓涓敤浜庡垱寤哄璞$殑鎺ュ彛錛岃瀛愮被鍐沖畾瀹炰緥鍖栧摢涓涓被錛屽伐鍘傛柟娉曚嬌寰椾竴涓被鐨勫疄渚嬪寲寤惰繜鍒板叾瀛愮被銆?/p> UML綾誨浘錛?br><img height=546 alt="" src="http://www.shnenglu.com/images/cppblog_com/wolf/FMethod.jpg" width=1023 border=0>  <img src ="http://www.shnenglu.com/wolf/aggbug/122610.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2010-08-10 00:30 <a href="http://www.shnenglu.com/wolf/articles/122610.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>甯歌璁捐妯″紡涔嬬畝鍗曞伐鍘傛ā寮忥紙Static Factory Method錛?/title><link>http://www.shnenglu.com/wolf/articles/122609.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Mon, 09 Aug 2010 13:34:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/122609.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/122609.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/122609.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/122609.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/122609.html</trackback:ping><description><![CDATA[<p>綆鍗曞伐鍘傛ā寮忓張琚О涓洪潤鎬佸伐鍘傛ā寮忋傜畝鍗曞伐鍘傛ā寮忔槸鐢變竴涓伐鍘傚璞″喅瀹氬垱寤哄嚭鍝竴縐嶄駭鍝佺被鐨勫疄渚嬨傜畝鍗曞伐鍘傛ā寮忔槸宸ュ巶妯″紡瀹舵棌涓渶綆鍗曞疄鐢ㄧ殑妯″紡錛屽彲浠ョ悊瑙d負鏄笉鍚屽伐鍘傛ā寮忕殑涓涓壒孌婂疄鐜般?/p> <br>UML綾誨浘錛?br><img height=500 alt="" src="http://www.shnenglu.com/images/cppblog_com/wolf/StaticFactory.jpg" width=660 border=0> <br>綾誨浘涓彧鍒楀嚭涓昏鏂規(guī)硶錛岃屽彧鏈夊伐鍘傜被涓粰鍑轟簡鏋勯犲拰鏋愭瀯鍑芥暟錛屽茍涓旈兘鏄鏈夈傜洰鐨勬槸寮鴻皟榪欎釜宸ュ巶綾葷殑浣滅敤鍙槸“鍑轟駭鍝?#8221;錛岃嚜宸變笉闇瑕佸疄渚嬪寲錛屾墍浠ュ皢鏋勯犲拰鏋愭瀯澹版槑涓虹鏈夛紙榪欎釜鍙傜敤浜?#8220;綆鍗?#8221;宸ュ巶妯″紡錛夈?br>浠g爜錛堜負鍑忓皬綃囧箙錛屼唬鐮佸彧瀹炵幇閮ㄥ垎錛屽茍code鍒頒竴涓猚pp鏂囦歡涓級錛?br> <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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#include </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">iostream</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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 3</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000"> std;<br></span><span style="COLOR: #008080"> 4</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 5</span><span style="COLOR: #000000"><img id=Codehighlighter1_43_75_Open_Image onclick="this.style.display='none'; Codehighlighter1_43_75_Open_Text.style.display='none'; Codehighlighter1_43_75_Closed_Image.style.display='inline'; Codehighlighter1_43_75_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_43_75_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_43_75_Closed_Text.style.display='none'; Codehighlighter1_43_75_Open_Image.style.display='inline'; Codehighlighter1_43_75_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_43_75_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">/**/</span><span id=Codehighlighter1_43_75_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000"> @brief Base operation class.</span><span style="COLOR: #808080"></span></span><br><span style="COLOR: #008080"> 6</span><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> Operation<br></span><span style="COLOR: #008080"> 7</span><span style="COLOR: #000000"><img id=Codehighlighter1_92_374_Open_Image onclick="this.style.display='none'; Codehighlighter1_92_374_Open_Text.style.display='none'; Codehighlighter1_92_374_Closed_Image.style.display='inline'; Codehighlighter1_92_374_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_92_374_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_92_374_Closed_Text.style.display='none'; Codehighlighter1_92_374_Open_Image.style.display='inline'; Codehighlighter1_92_374_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_92_374_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_92_374_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080"> 8</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">protected</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080"> 9</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000"> m_numA;<br></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000"> m_numB;<br></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    <br></span><span style="COLOR: #008080">12</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080">13</span><span style="COLOR: #000000"><img id=Codehighlighter1_198_253_Open_Image onclick="this.style.display='none'; Codehighlighter1_198_253_Open_Text.style.display='none'; Codehighlighter1_198_253_Closed_Image.style.display='inline'; Codehighlighter1_198_253_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_198_253_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_198_253_Closed_Text.style.display='none'; Codehighlighter1_198_253_Open_Image.style.display='inline'; Codehighlighter1_198_253_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    Operation(): m_numA(</span><span style="COLOR: #000000">0.0</span><span style="COLOR: #000000">), m_numB(</span><span style="COLOR: #000000">0.0</span><span style="COLOR: #000000">) </span><span id=Codehighlighter1_198_253_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_198_253_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">14</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Operation constructor</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">15</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">16</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">17</span><span style="COLOR: #000000"><img id=Codehighlighter1_281_335_Open_Image onclick="this.style.display='none'; Codehighlighter1_281_335_Open_Text.style.display='none'; Codehighlighter1_281_335_Closed_Image.style.display='inline'; Codehighlighter1_281_335_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_281_335_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_281_335_Closed_Text.style.display='none'; Codehighlighter1_281_335_Open_Image.style.display='inline'; Codehighlighter1_281_335_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    </span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">~</span><span style="COLOR: #000000">Operation() </span><span id=Codehighlighter1_281_335_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_281_335_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">18</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Operation destructor</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">19</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">20</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">21</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">virtual</span><span style="COLOR: #000000"> getResult() </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">22</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">23</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">24</span><span style="COLOR: #000000"><img id=Codehighlighter1_378_427_Open_Image onclick="this.style.display='none'; Codehighlighter1_378_427_Open_Text.style.display='none'; Codehighlighter1_378_427_Closed_Image.style.display='inline'; Codehighlighter1_378_427_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_378_427_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_378_427_Closed_Text.style.display='none'; Codehighlighter1_378_427_Open_Image.style.display='inline'; Codehighlighter1_378_427_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_378_427_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">/**/</span><span id=Codehighlighter1_378_427_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000"> @brief The class implement the add operation.</span><span style="COLOR: #808080"></span></span><br><span style="COLOR: #008080">25</span><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> OperAdd: </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> Operation<br></span><span style="COLOR: #008080">26</span><span style="COLOR: #000000"><img id=Codehighlighter1_460_733_Open_Image onclick="this.style.display='none'; Codehighlighter1_460_733_Open_Text.style.display='none'; Codehighlighter1_460_733_Closed_Image.style.display='inline'; Codehighlighter1_460_733_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_460_733_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_460_733_Closed_Text.style.display='none'; Codehighlighter1_460_733_Open_Image.style.display='inline'; Codehighlighter1_460_733_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_460_733_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_460_733_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">27</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080">28</span><span style="COLOR: #000000"><img id=Codehighlighter1_502_595_Open_Image onclick="this.style.display='none'; Codehighlighter1_502_595_Open_Text.style.display='none'; Codehighlighter1_502_595_Closed_Image.style.display='inline'; Codehighlighter1_502_595_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_502_595_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_502_595_Closed_Text.style.display='none'; Codehighlighter1_502_595_Open_Image.style.display='inline'; Codehighlighter1_502_595_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    OperAdd(</span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000"> a, </span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000"> b) </span><span id=Codehighlighter1_502_595_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_502_595_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">29</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">OperAdd constructor</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">30</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        m_numA </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> a;<br></span><span style="COLOR: #008080">31</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        m_numB </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> b;<br></span><span style="COLOR: #008080">32</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">33</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">34</span><span style="COLOR: #000000"><img id=Codehighlighter1_613_665_Open_Image onclick="this.style.display='none'; Codehighlighter1_613_665_Open_Text.style.display='none'; Codehighlighter1_613_665_Closed_Image.style.display='inline'; Codehighlighter1_613_665_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_613_665_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_613_665_Closed_Text.style.display='none'; Codehighlighter1_613_665_Open_Image.style.display='inline'; Codehighlighter1_613_665_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    </span><span style="COLOR: #000000">~</span><span style="COLOR: #000000">OperAdd() </span><span id=Codehighlighter1_613_665_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_613_665_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">35</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">OperAdd destructor</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">36</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">37</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">38</span><span style="COLOR: #000000"><img id=Codehighlighter1_691_731_Open_Image onclick="this.style.display='none'; Codehighlighter1_691_731_Open_Text.style.display='none'; Codehighlighter1_691_731_Closed_Image.style.display='inline'; Codehighlighter1_691_731_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_691_731_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_691_731_Closed_Text.style.display='none'; Codehighlighter1_691_731_Open_Image.style.display='inline'; Codehighlighter1_691_731_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    </span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000"> getResult() </span><span id=Codehighlighter1_691_731_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_691_731_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">39</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> (m_numA </span><span style="COLOR: #000000">+</span><span style="COLOR: #000000"> m_numB);<br></span><span style="COLOR: #008080">40</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">41</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">42</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">43</span><span style="COLOR: #000000"><img id=Codehighlighter1_737_796_Open_Image onclick="this.style.display='none'; Codehighlighter1_737_796_Open_Text.style.display='none'; Codehighlighter1_737_796_Closed_Image.style.display='inline'; Codehighlighter1_737_796_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_737_796_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_737_796_Closed_Text.style.display='none'; Codehighlighter1_737_796_Open_Image.style.display='inline'; Codehighlighter1_737_796_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_737_796_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">/**/</span><span id=Codehighlighter1_737_796_Open_Text><span style="COLOR: #808080">///</span><span style="COLOR: #008000"> @brief The class OperSub, OperMul and OperDiv omitted. </span><span style="COLOR: #808080"></span></span><br><span style="COLOR: #008080">44</span><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">45</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> OperFactory<br></span><span style="COLOR: #008080">46</span><span style="COLOR: #000000"><img id=Codehighlighter1_816_997_Open_Image onclick="this.style.display='none'; Codehighlighter1_816_997_Open_Text.style.display='none'; Codehighlighter1_816_997_Closed_Image.style.display='inline'; Codehighlighter1_816_997_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_816_997_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_816_997_Closed_Text.style.display='none'; Codehighlighter1_816_997_Open_Image.style.display='inline'; Codehighlighter1_816_997_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_816_997_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_816_997_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">47</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top></span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080">48</span><span style="COLOR: #000000"><img id=Codehighlighter1_845_918_Open_Image onclick="this.style.display='none'; Codehighlighter1_845_918_Open_Text.style.display='none'; Codehighlighter1_845_918_Closed_Image.style.display='inline'; Codehighlighter1_845_918_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_845_918_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_845_918_Closed_Text.style.display='none'; Codehighlighter1_845_918_Open_Image.style.display='inline'; Codehighlighter1_845_918_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    </span><span style="COLOR: #0000ff">enum</span><span style="COLOR: #000000"> OPER_TYPE </span><span id=Codehighlighter1_845_918_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_845_918_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">49</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        ADD </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">50</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        SUB </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">51</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        MUL </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">52</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        DIV </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">4</span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">53</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">54</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">55</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> Operation</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> createOperation(OPER_TYPE oper, </span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000"> a, </span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000"> b);<br></span><span style="COLOR: #008080">56</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">57</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">58</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>Operation</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> OperFactory::createOperation(OPER_TYPE oper, </span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000"> a, </span><span style="COLOR: #0000ff">double</span><span style="COLOR: #000000"> b) <br></span><span style="COLOR: #008080">59</span><span style="COLOR: #000000"><img id=Codehighlighter1_1078_1247_Open_Image onclick="this.style.display='none'; Codehighlighter1_1078_1247_Open_Text.style.display='none'; Codehighlighter1_1078_1247_Closed_Image.style.display='inline'; Codehighlighter1_1078_1247_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_1078_1247_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1078_1247_Closed_Text.style.display='none'; Codehighlighter1_1078_1247_Open_Image.style.display='inline'; Codehighlighter1_1078_1247_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_1078_1247_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_1078_1247_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">60</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    Operation</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> pOper </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> NULL;<br></span><span style="COLOR: #008080">61</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">62</span><span style="COLOR: #000000"><img id=Codehighlighter1_1128_1226_Open_Image onclick="this.style.display='none'; Codehighlighter1_1128_1226_Open_Text.style.display='none'; Codehighlighter1_1128_1226_Closed_Image.style.display='inline'; Codehighlighter1_1128_1226_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1128_1226_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1128_1226_Closed_Text.style.display='none'; Codehighlighter1_1128_1226_Open_Image.style.display='inline'; Codehighlighter1_1128_1226_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    </span><span style="COLOR: #0000ff">switch</span><span style="COLOR: #000000"> (oper) </span><span id=Codehighlighter1_1128_1226_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_1128_1226_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">63</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">case</span><span style="COLOR: #000000"> ADD:<br></span><span style="COLOR: #008080">64</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        pOper </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> OperAdd(a, b);<br></span><span style="COLOR: #008080">65</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">66</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">default</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080">67</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        </span><span style="COLOR: #0000ff">break</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">68</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">69</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">70</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> pOper;<br></span><span style="COLOR: #008080">71</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">72</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">73</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main()<br></span><span style="COLOR: #008080">74</span><span style="COLOR: #000000"><img id=Codehighlighter1_1261_1472_Open_Image onclick="this.style.display='none'; Codehighlighter1_1261_1472_Open_Text.style.display='none'; Codehighlighter1_1261_1472_Closed_Image.style.display='inline'; Codehighlighter1_1261_1472_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_1261_1472_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1261_1472_Closed_Text.style.display='none'; Codehighlighter1_1261_1472_Open_Image.style.display='inline'; Codehighlighter1_1261_1472_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_1261_1472_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_1261_1472_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">75</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    Operation</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> pOper </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> OperFactory::createOperation(OperFactory::ADD, </span><span style="COLOR: #000000">2.1</span><span style="COLOR: #000000">, </span><span style="COLOR: #000000">3.3</span><span style="COLOR: #000000">);<br></span><span style="COLOR: #008080">76</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">77</span><span style="COLOR: #000000"><img id=Codehighlighter1_1360_1455_Open_Image onclick="this.style.display='none'; Codehighlighter1_1360_1455_Open_Text.style.display='none'; Codehighlighter1_1360_1455_Closed_Image.style.display='inline'; Codehighlighter1_1360_1455_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_1360_1455_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1360_1455_Closed_Text.style.display='none'; Codehighlighter1_1360_1455_Open_Image.style.display='inline'; Codehighlighter1_1360_1455_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (pOper) </span><span id=Codehighlighter1_1360_1455_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_1360_1455_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">78</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> pOper</span><span style="COLOR: #000000">-></span><span style="COLOR: #000000">getResult() </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br></span><span style="COLOR: #008080">79</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">80</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        delete pOper;<br></span><span style="COLOR: #008080">81</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>        pOper </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> NULL;<br></span><span style="COLOR: #008080">82</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">83</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">84</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/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">85</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div> <br>綆鍗曞伐鍘傛ā寮忕殑鏈澶т紭鐐瑰湪浜庡伐鍘傜被涓寘鍚簡蹇呰鐨勯昏緫鍒ゆ柇錛屾牴鎹鎴風(fēng)鐨勯夋嫨鏉′歡鍔ㄦ佸疄渚嬪寲鐩稿叧鐨勭被錛屽浜庡鎴風(fēng)鏉ヨ錛屽幓闄や簡涓庡叿浣撲駭鍝佺殑渚濊禆銆備絾綆鍗曞伐鍘傛ā寮忕殑宸ュ巶綾繪槸寮鏀劇殑錛屽鏋滆澧炲姞鍏跺畠浜у搧錛屽垯瑕佷慨鏀瑰伐鍘傜被錛岃繖涓鐐硅繚鑳屽紑鏀?灝侀棴鍘熷垯錛圤pen-Close Principle錛屽鎵╁睍寮鍙戯紝瀵逛慨鏀瑰叧闂級銆傝岃鍏嬫湇榪欎竴緙虹偣錛屽垯瑕佷嬌鐢ㄥ伐鍘傛柟娉曟ā寮忥紙Factory Method錛夛紝榪欑緇忚繃鏀硅繘宸ュ巶妯″紡灝嗗湪涓嬩竴鑺備粙緇嶃? <img src ="http://www.shnenglu.com/wolf/aggbug/122609.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2010-08-09 21:34 <a href="http://www.shnenglu.com/wolf/articles/122609.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>甯歌璁捐妯″紡涔嬫ā鏉挎柟娉曟ā寮忥紙Template Method錛?/title><link>http://www.shnenglu.com/wolf/articles/122607.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Mon, 09 Aug 2010 10:09:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/122607.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/122607.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/122607.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/122607.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/122607.html</trackback:ping><description><![CDATA[     鎽樿: 妯℃澘鏂規(guī)硶妯″紡鏄竴縐嶅緢綆鍗曚絾鍗村緢甯歌鐨勮璁℃ā寮忥紝瀹冨父甯稿湪涓嶇煡涓嶈涓浣跨敤銆傛蹇碉細瀹氫箟涓涓搷浣滀腑鐨勭畻娉曠殑楠ㄦ灦錛岃屽皢鍏蜂綋鐨勬墽琛屾楠ゅ歡榪熷埌瀛愮被涓傛ā鏉挎柟娉曚嬌寰楀瓙綾誨彲浠ヤ笉鏀瑰彉綆楁硶鐨勭粨鏋勮屽彧鏄噸鏂板畾涔夌畻娉曠殑姝ラ錛屼嬌寰椾笉鍚屾楠や駭鐢熶笉鍚岀殑鏁堟灉銆傝鐨勬洿綆鍗曠偣錛屽氨鏄墽琛岀殑妗嗘灦鐢卞熀綾繪潵瀹氾紝鑰屾鏋朵腑鐨勬柟娉曞強鎵ц欏哄簭鐢卞瓙綾繪潵閲嶅畾涔夈俇ML綾誨浘錛?nbsp;涓婂浘鐨勪唬鐮佸緢濂藉疄鐜幫紝灝辨槸鍩虹被鐨勬ā鏉垮嚱鏁頒腑璋冪敤浜唎peration1鍜?..  <a href='http://www.shnenglu.com/wolf/articles/122607.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/wolf/aggbug/122607.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2010-08-09 18:09 <a href="http://www.shnenglu.com/wolf/articles/122607.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>甯歌璁捐妯″紡涔嬪崟浠剁被錛圫ingleton錛?/title><link>http://www.shnenglu.com/wolf/articles/120840.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Mon, 19 Jul 2010 15:39:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/120840.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/120840.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/120840.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/120840.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/120840.html</trackback:ping><description><![CDATA[     鎽樿: 鎵璋撶殑鍗曚歡綾誨氨鏄繚璇佷竴涓被浠呮湁涓涓疄渚嬶紝騫舵彁渚涗竴涓闂畠鐨勫叏灞璁塊棶鐐廣?nbsp; Singleton鍙互鐪嬩綔鏄竴縐嶇粡榪囨敼榪涚殑鍏ㄥ眬鍙橀噺錛屾棦鍦ㄤ竴涓繘紼嬩腑鍙兘鏈夊敮涓鐨勫疄渚嬶紝涓嶅厑璁鎬駭鐢熺浜屼釜榪欐牱鐨勫璞°?铏界劧鍗曚歡綾繪槸鏈綆鍗曠殑璁捐妯″紡錛屼絾浠嶉渶灝忓績浣跨敤錛屼富瑕侀渶娉ㄦ剰錛?1.鏋勯犲嚱鏁?鏃㈢劧鏄彧鑳芥湁涓涓疄渚嬶紝閭d箞鏋勯犲嚱鏁拌嚜鐒朵笉鑳借澶栭儴闅忔剰璋冪敤錛屾墍浠ラ渶瑕佸皢鍏跺0鏄庝負縐佹湁錛坧rivate錛夛紝鍖呮嫭榛樿鏋勯犮佹嫹...  <a href='http://www.shnenglu.com/wolf/articles/120840.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/wolf/aggbug/120840.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2010-07-19 23:39 <a href="http://www.shnenglu.com/wolf/articles/120840.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>C鍜孋++涔嬮棿搴撶殑浜掔浉璋冪敤http://www.shnenglu.com/wolf/articles/77828.html鑰佺嫾鑰佺嫾Wed, 25 Mar 2009 06:34:00 GMThttp://www.shnenglu.com/wolf/articles/77828.htmlhttp://www.shnenglu.com/wolf/comments/77828.htmlhttp://www.shnenglu.com/wolf/articles/77828.html#Feedback0http://www.shnenglu.com/wolf/comments/commentRss/77828.htmlhttp://www.shnenglu.com/wolf/services/trackbacks/77828.html鏄ㄦ櫄鏈変釜鏈嬪弸闂垜鍏充簬鍦–涓皟鐢–++搴撶殑闂錛屼粖澶╁崍楗悗錛岀敱浜庤剸瀛愮棝鐨勫帀瀹寵屾病鏈夊姞鍏ュ埌鎴戜滑緇勭殑“姣忓ぉ涓鎴?#8221;鐨勮鍒椾腑鍘伙紝鎵浠ユ濂藉皢C鍜孋++涔嬮棿鐨勫簱璋冪敤鍏崇郴鍋氫釜鎬葷粨銆?/p>

1.extern "C"鐨勭悊瑙o細
寰堝浜鴻涓?C"琛ㄧず鐨凜璇█錛屽疄闄呭茍闈炲姝わ紝"C"琛ㄧず鐨勬槸涓縐嶉摼鎺ョ害瀹氾紝鍙槸鍥燙鍜孋++璇█涔嬮棿鐨勫瘑鍒囧叧緋昏屽湪瀹冧滑涔嬮棿鏇村鐨勫簲鐢ㄨ屽凡銆傚疄闄呬笂Fortran鍜屾眹緙栬璦涔熷父甯鎬嬌鐢紝鍥犱負瀹冧滑涔熸濂界鍚圕瀹炵幇鐨勭害瀹氥?br>extern "C"鎸囦護鎻忚堪鐨勬槸涓縐嶉摼鎺ョ害瀹氾紝瀹冨茍涓嶅獎鍝嶈皟鐢ㄥ嚱鏁扮殑瀹氫箟錛屽嵆鏃跺仛浜嗚澹版槑錛屽鍑芥暟綾誨瀷鐨勬鏌ュ拰鍙傛暟杞崲浠嶈閬靛驚C++鐨勬爣鍑嗭紝鑰屼笉鏄疌銆?/p>

2.extern "C"鐨勪綔鐢細
涓嶅悓鐨勮璦閾炬帴鎬ф槸涓嶅悓鐨勶紝閭d箞涔熷喅瀹氫簡瀹冧滑緙栬瘧鍚庣殑閾炬帴絎﹀彿鐨勪笉鍚岋紝姣斿涓涓嚱鏁皏oid fun(double d)錛孋璇█浼氭妸瀹冪紪璇戞垚綾諱技_fun榪欐牱鐨勭鍙鳳紝C閾炬帴鍣ㄥ彧瑕佹壘鍒拌鍑芥暟絎﹀彿灝卞彲浠ラ摼鎺ユ垚鍔燂紝瀹冨亣璁懼弬鏁扮被鍨嬩俊鎭槸姝g‘鐨勩傝孋++浼氭妸榪欎釜鍑芥暟緙栬瘧鎴愮被浼糭fun_double鎴朹xxx_funDxxx榪欐牱鐨勭鍙鳳紝鍦ㄧ鍙蜂笂澧炲姞浜嗙被鍨嬩俊鎭紝榪欎篃鏄疌++鍙互瀹炵幇閲嶈澆鐨勫師鍥犮?br>閭d箞錛屽浜庣敤C緙栬瘧鍣ㄧ紪璇戞垚鐨勫簱錛岀敤C++鐩存帴閾炬帴鍔垮繀浼氬嚭鐜頒笉鑳借瘑鍒鍙風(fēng)殑闂錛屾槸鐨勶紝闇瑕乪xtern "C"鐨勬椂鍒繪潵浜嗭紝瀹冨氨鏄共榪欎釜鐢ㄧ殑銆俥xtern "C" 鐨勪綔鐢ㄥ氨鏄緙栬瘧鍣ㄧ煡閬撹浠璇█鐨勬柟寮忕紪璇戝拰榪炴帴灝佽鍑芥暟銆?/p>

3.鍦–++涓皟鐢–搴撶殑渚嬪瓙錛?br>1).鍋氫竴涓狢鍔ㄦ佸簱錛?br>

// hello.c:

#include 
<stdio.h>

void hello()
{
  printf(
"hello\n");
}

 

緙栬瘧騫禼opy鍒扮郴緇熷簱鐩綍涓?涔熷彲浠ヨ嚜宸卞畾涔夊簱鐩綍錛宮an ldconfig):
[root@coredump test]# gcc --shared -o libhello.so hello.c
[root@coredump test]# cp libhello.so /lib/
2).鍐欎釜C++紼嬪簭鍘昏皟鐢ㄥ畠錛?br>

// test.cpp

#include 
<iostream>

#ifdef __cplusplus
extern "C" {               // 鍛婅瘔緙栬瘧鍣ㄤ笅鍒椾唬鐮佽浠閾炬帴綰﹀畾鐨勬ā寮忚繘琛岄摼鎺?/span>
#endif

void hello();

#ifdef __cplusplus
}
#endif

int main()
{
  hello();

  
return 0;
}


緙栬瘧騫惰繍琛岋細
[root@coredump test]# g++ test.cpp -o test -lhello
[root@coredump test]# ./test
hello
[root@coredump test]#
3).__cplusplus瀹忕殑鏉′歡緙栬瘧錛?br>涓轟粈涔堣鍔犺繖涓潯浠剁紪璇戝憿錛熷皬娌堥槼鏈夎瘽錛氬皬濡癸紝榪欐槸涓轟粈涔堝憿錛?br>鍥犱負榪欑鎶鏈篃鍙兘浼氱敤鍦ㄧ敱C澶存枃浠朵駭鐢熷嚭鐨凜++鏂囦歡涓紝榪欐牱浣跨敤鏄負浜嗗緩绔嬭搗鍏叡鐨凜鍜孋++鏂囦歡錛屼篃灝辨槸淇濊瘉褰撹繖涓枃浠惰鐢ㄥ仛C鏂囦歡緙栬瘧鏃訛紝鍙互鍘繪帀C++緇撴瀯錛屼篃灝辨槸璇達紝extern "C"璇硶鍦–緙栬瘧鐜涓嬫槸涓嶅厑璁哥殑銆?br>姣斿錛氬皢涓婇潰鐨則est.cpp鏇村悕涓簍est.c錛屽皢澶存枃浠舵敼涓簊tdio.h錛屽皢鏉′歡緙栬瘧鍘繪帀錛屽啀鐢╣cc緙栬瘧灝卞彲浠ョ湅鍒版晥鏋溿傝屽嵆浣垮仛浜嗕笂闈㈢殑淇敼錛屽鏋滅敤g++緙栬瘧灝卞彲浠ユ甯鎬嬌鐢紝榪欏氨鏄垜涓婇潰璇寸殑“鍏叡鐨凜鍜孋++鏂囦歡”鐨勬剰鎬濄?/p>

4.C璋冪敤C++搴擄細
C++璋冪敤C搴撶湅涓婂幓涔熶笉鏄偅涔堝洶闅撅紝鍥犱負C++鏈韓灝辨湁鍚戝墠(鍚慍)鍏煎鐨勭壒鎬э紝鍐嶅姞涓婄函澶╃劧鐨別xtern "C"綰﹀畾錛屼嬌寰椾竴鍒囬兘鏄偅涔堣嚜鐒躲傝岃C璋冪敤C++鐨勫簱浼間箮灝辨病閭d箞瀹規(guī)槗錛屼笉榪囦篃涓嶆槸涓嶅彲浠ョ殑銆?br>璇村埌榪欓噷鎴戝緱浼戞伅涓涓嬶紝澶т腑鍗堢殑錛屽嚭鍘繪娊鏍圭儫鍏堬紝涓嶈繃鎴戜篃鐩鎬俊濡傛灉浣犱笉鐭ラ亾絳旀錛岀湅鍒拌繖閲岀殑鏃跺欒偗瀹氬湪鍒板鎵炬澘鐮栵紝鎭ㄤ笉寰楁暡寮鎴戠殑鑴戝3瀛愩傛垜鑳界悊瑙o紝鎴戜篃涔?fàn)鎯簡锛屾垜鏈変釜瀛﹀涓鐪嬪埌鎴戠涓鍙嶅簲灝辨槸鎵斿嚭涓鍧楃爾澶村厛錛?br>璦褰掓浼狅紝榪樻槸瑕佸熷姪榪欑函澶╃劧鐨別xtern "C"銆?/p>

1)鍋氫竴涓狢++搴擄細

// world.cpp

#include 
<iostream>

void world()
{
  std::cout 
<< "world" << std::endl;
}


緙栬瘧騫禼opy鍒扮郴緇熷簱鐩綍涓?
[root@coredump test]# g++ --shared -o libworld.so world.cpp
[root@coredump test]# cp libworld.so /lib/
2)鍋氫竴涓腑闂存帴鍙e簱錛屽C++搴撹繘琛屼簩嬈″皝瑁咃細

// mid.cpp

#include 
<iostream>

void world();

#ifdef __cplusplus
extern "C" {  // 鍗充嬌榪欐槸涓涓狢++紼嬪簭錛屼笅鍒楄繖涓嚱鏁扮殑瀹炵幇涔熻浠綰﹀畾鐨勯鏍兼潵鎼烇紒
#endif

  
void m_world()
  {
    world();
  }

#ifdef __cplusplus
}
#endif


鍏朵腑鏂規(guī)硶m_world鍗充負libworld搴撲腑world鏂規(guī)硶鐨勪簩嬈″皝瑁咃紝緙栬瘧騫禼opy鍒扮郴緇熷簱鐩綍涓?
[root@coredump test]# g++ --shared -o libmid.so mid.cpp -lworld
[root@coredump test]# cp libmid.so /lib/
3).C紼嬪簭閫氳繃閾炬帴浜屾鎺ュ彛搴撳幓璋冪敤C++搴擄細

// test.c

#include 
<stdio.h>

int main()
{
  m_world();

  
return 0;
}


緙栬瘧騫惰繍琛岋細
[root@coredump test]# gcc test.c -l mid -o test
[root@coredump test]# ./test
world
[root@coredump test]#
娉細濡傛灉瀵逛簬C++搴撲腑鍚湁綾葷殑錛屽彲浠ュ湪浜屾鎺ュ彛鍑芥暟涓敓鎴愪復(fù)鏃跺璞℃潵璋冪敤瀵瑰簲鐨勫姛鑳藉嚱鏁幫紝褰撶劧瑕佹牴鎹疄闄呮儏鍐墊潵瀹氫簡銆?/p>

5.闈狅紝榪囦簡鍗堜紤鏃墮棿浜嗭紝鏀跺伐錛?/p>

鑰佺嫾 2009-03-25 14:34 鍙戣〃璇勮
]]>
linux涓殑鍔ㄦ佸簱鍜岄潤鎬佸簱http://www.shnenglu.com/wolf/articles/74928.html鑰佺嫾鑰佺嫾Wed, 25 Feb 2009 15:10:00 GMThttp://www.shnenglu.com/wolf/articles/74928.htmlhttp://www.shnenglu.com/wolf/comments/74928.htmlhttp://www.shnenglu.com/wolf/articles/74928.html#Feedback1http://www.shnenglu.com/wolf/comments/commentRss/74928.htmlhttp://www.shnenglu.com/wolf/services/trackbacks/74928.html
1.姒傚康鍜屽尯鍒細
    闈欐佸簱灝辨槸鍦ㄧ紪璇戣繃紼嬩腑涓浜涚洰鏍囨枃浠剁殑闆嗗悎銆傞潤鎬佸簱鍦ㄧ▼搴忛摼鎺ョ殑鏃跺欎嬌鐢紝閾炬帴鍣ㄤ細灝嗙▼搴忎腑浣跨敤鍒板嚱鏁扮殑浠g爜浠庡簱鏂囦歡涓嫹璐濆埌搴旂敤紼嬪簭涓備竴鏃﹂摼鎺ュ畬鎴愶紝鍦ㄦ墽琛岀▼搴忕殑鏃跺欏氨涓嶉渶瑕侀潤鎬佸簱浜嗐?
    鐢變簬姣忎釜浣跨敤闈欐佸簱鐨勫簲鐢ㄧ▼搴忛兘闇瑕佹嫹璐濇墍鐢ㄥ嚱鏁扮殑浠g爜錛屾墍浠ラ潤鎬侀摼鎺ョ殑鏂囦歡浼氭瘮杈冨ぇ銆?/p>

    鐩稿浜庨潤鎬佸嚱鏁板簱錛屽姩鎬佸嚱鏁板簱鍦ㄧ紪璇戠殑鏃跺欏茍娌℃湁琚紪璇戣繘鐩爣浠g爜涓紝鑰屽彧鏄綔浜涙爣璁般傜劧鍚庡湪紼嬪簭寮濮嬪惎鍔ㄨ繍琛岀殑鏃跺欙紝鍔ㄦ佸湴鍔犺澆鎵闇妯″潡錛屽洜姝ゅ姩鎬佸嚱鏁板簱鎵浜х敓鐨勫彲鎵ц鏂囦歡姣旇緝?yōu)畯銆傜敱浜庡嚱鏁板簱娌℃湁琚暣鍚堣繘浣犵殑紼嬪簭錛岃屾槸紼嬪簭榪愯鏃跺姩鎬佺殑鐢寵騫惰皟鐢紝鎵浠ョ▼搴忕殑榪愯鐜涓繀欏繪彁渚涚浉搴旂殑搴撱傚姩鎬佸嚱鏁板簱鐨勬敼鍙樺茍涓嶅獎鍝嶄綘鐨勭▼搴忥紝鎵浠ュ姩鎬佸嚱鏁板簱鐨勫崌綰ф瘮杈冩柟渚褲?/p>

2.鍛藉悕錛?br>    闈欐佸簱鐨勫悕瀛椾竴鑸負libxxxx.a錛屽叾涓瓁xxx鏄lib鐨勫悕縐般?br>    鍔ㄦ佸簱鐨勫悕瀛椾竴鑸負libxxxx.so.major.minor錛寈xxx鏄lib鐨勫悕縐幫紝major鏄富鐗堟湰鍙鳳紝minor鏄壇鐗堟湰鍙楓傜増鏈彿涔熷彲浠ユ病鏈夛紝涓鑸兘浼氬緩绔嬩釜娌℃湁鐗堟湰鍙風(fēng)殑杞繛鎺ユ枃浠墮摼鎺ュ埌鍏ㄥ悕鐨勫簱鏂囦歡銆?/p>

3.鍒涘緩錛?br>鏃犺闈欐佸簱榪樻槸鍔ㄦ佸簱錛屽垱寤洪兘鍒嗕負涓ゆ錛岀涓姝ュ垱寤虹洰鏍囨枃浠訛紝絎簩姝ョ敓浜у簱銆?br>1).闈欐佸簱鐨勫垱寤猴細
#gcc -c test.c -o test.o
#ar rcs libtest.a test.o
鍚嶅瓧涓簂ibtest.a鐨勯潤鎬佸簱灝辯敓浜т簡錛屽叾涓夐」錛?br>r 琛ㄦ槑灝嗘ā鍧楀姞鍏ュ埌闈欐佸簱涓紱
c 琛ㄧず鍒涘緩闈欐佸簱錛?br>s 琛ㄧず鐢熶駭绱㈠紩錛?br>榪樻湁鏇村閫夐」鍍忓鍔犮佸垹闄ゅ簱涓殑鐩爣鏂囦歡錛屽寘鎷皢闈欐佸簱瑙e寘絳夊彲浠ラ氳繃man鏉ヨ幏寰椼?br>2).鍔ㄦ佸簱鐨勫垱寤猴細
#gcc -fPIC -c test.c -o test.c
#gcc --share test.o -o libtest.so
-fPIC 涓轟簡璺ㄥ鉤鍙?/p>

4.浣跨敤錛?br>緙栬瘧閾炬帴鐩爣紼嬪簭鐨勬柟娉曟槸涓鏍風(fēng)殑錛?br>#gcc main.c -L. -ltest -o main
-L.鎸囧畾鐜板湪鏈洰褰曚笅鎼滅儲搴擄紝濡傛灉娌℃湁錛屼細鍒扮郴緇熼粯璁ょ殑鐩綍涓嬫悳绱紝涓鑸負/lib銆?usr/lib涓嬨?br>瀵逛簬闈欐佸簱錛岃繖涓楠や箣鍚庡氨鍙互灝唋ibtest.a搴撳垹鎺夛紝鍥犱負瀹冨凡緇忚緙栬瘧榪涗簡鐩爣紼嬪簭錛屼笉鍐嶉渶瑕佸畠浜嗐?br>鑰屽浜庡姩鎬佸簱錛宭ibtest.so搴撳彧鏄湪鐩爣紼嬪簭閲屽仛浜嗘爣璁幫紝鍦ㄨ繍琛岀▼搴忔椂鎵嶄細鍔ㄦ佸姞杞斤紝閭d箞浠庡摢鍔犺澆鍛紵鍔犺澆鐩綍浼氱敱/etc/ld.so.conf鏉ユ寚瀹氾紝涓鑸粯璁ゆ槸/lib銆?usr/lib錛屾墍浠ヨ鎯寵鍔ㄦ佸簱欏哄埄鍔犺澆錛屼綘鍙互灝嗗簱鏂囦歡copy鍒頒笂闈㈢殑涓や釜鐩綍涓嬶紝鎴栬呰緗甧xport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/XXX/YYY錛屽悗闈負浣犺嚜宸卞姩鎬佸簱鐨勭洰褰曪紝鍐嶆垨鑰呬慨鏀?etc/ld.so.conf鏂囦歡錛屾妸搴撴墍鍦ㄧ殑璺緞鍔犲埌鏂囦歡鏈熬錛屽茍鎵цldconfig鍒鋒柊銆傝繖鏍鳳紝鍔犲叆鐨勭洰褰曚笅鐨勬墍鏈夊簱鏂囦歡閮藉彲瑙併?/p>

鍙﹀榪樻湁涓枃浠墮渶瑕佷簡瑙?etc/ld.so.cache錛岄噷闈繚瀛樹簡甯哥敤鐨勫姩鎬佸嚱鏁板簱錛屼笖浼氬厛鎶婁粬浠姞杞藉埌鍐呭瓨涓紝鍥犱負鍐呭瓨鐨勮闂熷害榪滆繙澶т簬紜洏鐨勮闂熷害錛岃繖鏍峰彲浠ユ彁楂樿蔣浠跺姞杞藉姩鎬佸嚱鏁板簱鐨勯熷害浜嗐?/p>

鏈鍚庢彁涓鐐癸紝褰撳悓涓鐩綍涓嬫棦鏈夊姩鎬佸簱鍙堟湁闈欐佸簱錛屽茍涓斾袱涓簱鐨勫悕瀛楃浉鍚屾椂錛岀紪璇戞椂浼氬浣曢摼鎺ュ憿錛?/p>

gcc緙栬瘧鏃墮粯璁ら兘鏄姩鎬侀摼鎺ワ紝濡傛灉瑕佹寚瀹氫紭鍏堥摼鎺ラ潤鎬佸簱錛岄渶瑕佹寚瀹氬弬鏁皊tatic銆?/p>

 



鑰佺嫾 2009-02-25 23:10 鍙戣〃璇勮
]]>
C++鐨勫己鍒剁被鍨嬭漿鎹?/title><link>http://www.shnenglu.com/wolf/articles/71835.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Mon, 12 Jan 2009 15:22:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/71835.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/71835.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/71835.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/71835.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/71835.html</trackback:ping><description><![CDATA[ <p>鍦–++涓紝闄や簡鏀寔C璇█涓殑闅愬紡綾誨瀷杞崲澶栵紝鍚屾椂寮曞叆浜嗗洓縐嶆樉紺虹殑綾誨瀷杞崲鍑芥暟錛屼互紜垏鐨勬爣璇嗗嚭姝e湪榪涜鐨勮漿鎹㈢被鍨嬨?br>鍑芥暟鍘熷瀷涓猴紙鍧囦負妯℃澘鍑芥暟錛夛細<br>static_cast<new_type>(expression)<br>const_cast<new_type>(expression)<br>reinterpret_cast<new_type>(expression)<br>dynamic_cast<new_type>(expression)</p> <p>鍓嶄笁涓槸鍦ㄧ紪璇戞椂鏈熻繘琛岀被鍨嬭漿鎹㈢殑錛岃屾渶鍚庝竴涓垯鏄湪榪愯鏃舵湡榪涜杞崲鐨勶紝鍗砫ynamic_cast鍑芥暟闇瑕丷TTI鐨勬敮鎸侊紝濡傛灉鏄疺C涓嬶紝闇瑕佹墜鍔ㄦ墦寮RTTI鏀寔閫夐」銆?/p> <p>static_cast涓昏瀹屾垚鐩稿叧綾誨瀷涔嬮棿鐨勮漿鎹紝姣斿鏁村瀷鍒版灇涓俱佹暣鍨嬪埌嫻偣絳夈備絾static_cast涓嶈兘杞崲鎺塭xpression鐨刢onst銆乿olitale銆佹垨鑰卂_unaligned灞炴?/p> <p>const_cast涓鑸敤浜庡己鍒舵秷闄ゅ璞$殑甯擱噺鎬э紝瀹冩槸鍞竴鑳藉仛鍒拌繖涓鐐圭殑 C++ 椋庢牸鐨勫己鍒惰漿鍨嬶紝浣嗛渶娉ㄦ剰鐨勬槸鍙兘杞崲鎸囬拡鎴栧紩鐢ㄧ被鍨嬶紝鑰屼笉鑳借漿鎹㈡櫘閫氬父閲忕被鍨嬨?br>濡傦細<br>const int a = 1;<br>int b = const_cast <int>(a);<br>鏄敊璇殑銆?/p> <p>reinterpret_cast鐢ㄤ簬瀛楄妭鏁扮浉鍚岀殑綾誨瀷涔嬮棿鐨勮漿鎹紝甯哥敤鐨勫氨鏄暣鍨嬪拰鎸囬拡涔嬮棿銆佸嚱鏁版寚閽堢被鍨嬩箣闂磋繘琛岃漿鎹€傛搷浣滅浠呬粎閲嶆柊瑙i噴浜嗗璞$殑姣旂壒妯″瀷鑰屾病鏈夎繘琛屼簩榪涘埗杞崲錛岄渶璋ㄦ厧浣跨敤錛屼竴鑸彧鍦ㄦ妸綾誨瀷鏄犲皠鍥炲師鏈夌被鍨嬫椂浣跨敤銆?/p> <p>dynamic_cast涓昏鐢ㄤ簬綾誨眰嬈¢棿鐨勪笂琛岃漿鎹㈠拰涓嬭杞崲錛岃繕鍙互鐢ㄤ簬綾諱箣闂寸殑浜ゅ弶杞崲銆?br>鍦ㄧ被灞傛闂磋繘琛屼笂琛岃漿鎹㈡椂錛宒ynamic_cast鍜宻tatic_cast鐨勬晥鏋滄槸涓鏍風(fēng)殑錛?br>鍦ㄨ繘琛屼笅琛岃漿鎹㈡椂錛宒ynamic_cast鍏鋒湁綾誨瀷媯鏌ョ殑鍔熻兘錛屾瘮static_cast鏇村畨鍏ㄣ?br>浣犺兘鐢╠ynamic_cast鎶婃寚鍚戝熀綾葷殑鎸囬拡鎴栧紩鐢ㄨ漿鎹㈡垚鎸囧悜鍏舵淳鐢熺被鎴栧叾鍏勫紵綾葷殑鎸囬拡鎴栧紩鐢紝鑰屼笖浣犺兘鐭ラ亾杞崲鏄惁鎴愬姛銆傚け璐ョ殑杞崲灝嗚繑鍥炵┖鎸囬拡錛堝綋瀵規(guī)寚閽堣繘琛岀被鍨嬭漿鎹㈡椂錛夋垨鑰呮姏鍑哄紓甯革紙褰撳寮曠敤榪涜綾誨瀷杞崲鏃訛級銆?br></p><img src ="http://www.shnenglu.com/wolf/aggbug/71835.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2009-01-12 23:22 <a href="http://www.shnenglu.com/wolf/articles/71835.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>娉ㄦ剰C++ STL瀹瑰櫒涓璭rase鐨勪嬌鐢?/title><link>http://www.shnenglu.com/wolf/articles/70368.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Thu, 25 Dec 2008 16:03:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/70368.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/70368.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/70368.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/70368.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/70368.html</trackback:ping><description><![CDATA[<p>erase()鍑芥暟鐨勫姛鑳芥槸鐢ㄦ潵鍒犻櫎瀹瑰櫒涓殑鍏冪礌<br></p> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">鍑芥暟鍘熷瀷:<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>iterator erase(iterator where);<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>iterator erase(iterator first,iterator last);<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>basic_string</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000"> erase(size_type p0</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,size_type n</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">np);</span></div> <p><br>鍒犻櫎鏌愪釜瀹瑰櫒閲岀殑鏌愪釜鍏冪礌錛歝.erase(T);<br>鐪嬩技涓涓畝鍗曠殑鍔ㄤ綔錛岀劧鑰屽涓嶅悓綾誨瀷鐨勫鍣紝鍐呴儴鍗村仛浜嗘埅鐒朵笉鍚岀殑浜嬫儏錛屽悗闈粙緇嶃?/p> <p>鍋囪鏈夎繖鏍蜂竴涓鐩紝灝嗘煇涓鍣ㄤ腑鎵鏈夋弧瓚蟲潯浠禢 == X鐨勫厓绱犲垹闄わ紝鎸夌収甯歌鐨勬濊礬搴旇鏈夌被浼艱繖鏍風(fēng)殑浠g爜錛?br></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: #008000">//</span><span style="COLOR: #008000"> 鍋囪Container鍜宑ontainer鍒嗗埆琛ㄧず涓縐嶅鍣ㄥ拰瀵瑰簲鐨勪竴涓璞?/span><span style="COLOR: #008000"><br></span><span style="COLOR: #000000">Container</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">T</span><span style="COLOR: #000000">></span><span style="COLOR: #000000">::iterator it;<br></span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> (it </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> container.begin(); it </span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000"> container.end(); </span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">it) {<br>  </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (N </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> X)<br>    container.erase(it);<br>}</span></div> <p><br>鐒惰岃繖鏍風(fēng)殑浠g爜瀵逛簬浠諱竴縐嶅鍣ㄩ兘鏄敊璇殑<img src="http://www.shnenglu.com/CuteSoft_Client/CuteEditor/images/emsad.gif" align=absMiddle border=0><br>瀹瑰櫒鎸夊唴瀛樺垎閰嶆柟寮忓彲浠ュ垎涓洪摼琛ㄥ鍣ㄥ拰鏁扮粍瀹瑰櫒銆?br>鎵璋撶殑閾捐〃瀹瑰櫒鎸囩殑鏄竴縐嶈〃鐜版柟寮忥紝鍖呮嫭list銆乻list絳夎繖鏍峰熀浜庤妭鐐圭殑瀹瑰櫒錛堝姩鎬佸垎閰嶅唴瀛樺潡錛夊拰set銆乵ap銆乵ultiset銆乵ultimap絳夊叧鑱斿鍣紙騫寵 鏍?wèi)瀹炵帋图夊Q岃屾暟緇勫鍣ㄦ寚鐨勬槸鍦ㄤ竴鍧楄繛緇殑鍐呭瓨涓婁繚瀛樺厓绱犵殑榪炵畫鍐呭瓨瀹瑰櫒錛屾瘮濡倂ector銆乨eque銆乻tring絳夈?/p> <p>OK錛岀幇鍦ㄨ璇磂rase瀵逛粬浠殑鎿嶄綔錛岄摼琛ㄥ鍣ㄤ互list涓轟緥錛屽綋鎵цcontainer.erase(it)鏃訛紝紜疄絎竴涓弧瓚蟲潯浠剁殑鍏冪礌鍒犻櫎浜嗭紝浣嗚繖鏃秈t鎸囬拡宸茬粡琚垹闄や簡錛屽畠涔熶笉鎸囧悜浠諱綍鍏冪礌浜嗭紝鎵浠ヤ篃鍙兘鍒版涓烘浜嗭紝涔熷氨鏄涓婇潰鐨勪唬鐮佸浜庨摼琛ㄥ鍣ㄦ潵璇村彧鑳芥紜垹闄ょ涓涓弧瓚蟲潯浠剁殑鍏冪礌錛岄拡瀵硅繖涓棶棰樻垜浠鍏堟兂鍒扮殑灝辨槸鍦ㄥ垹闄ゆ寚閽堜箣鍓嶏紝緇欏叾鍋氫釜澶囦喚錛屽緢濂斤紝涓嶉敊鐨勪富鎰忥紝鎴戜滑涓鑸噰鐢ㄧ殑鏂規(guī)硶鏄緩绔嬩釜涓存椂鍙橀噺錛岃繖涓復(fù)鏃跺彉閲忓彲浠ュ湪紼嬪簭寰幆涓傚綋鐨勪綅緗嬌鐢紝鐪嬩笅鍒椾唬鐮佸疄鐜幫紝鏄皢榪欎釜涓存椂鍙橀噺鐩存帴寤虹珛鍦╡rase瀹炵幇閲岋紝榪欐牱鍋氭洿綆媧侊紝涔熸樉寰椾笓涓氫簺<img src="http://www.shnenglu.com/CuteSoft_Client/CuteEditor/images/emsmile.gif" align=absMiddle border=0>錛堜互鍒犻櫎int鍨嬮摼琛ㄤ腑鎵鏈夊伓鏁頒負渚嬶紝涔熸槸澶у閮藉枩嬈㈢殑涓涓緥瀛愶級錛?br></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: #000000">  list</span><span style="COLOR: #000000"><</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">></span><span style="COLOR: #000000">::iterator it; <br>  </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> (it </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> lt.begin(); it </span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000"> lt.end(); ) {<br>    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">it </span><span style="COLOR: #000000">%</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">2</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">)<br>      lt.erase(it</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">);<br>    </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br>      </span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">it;<br>  }</span></div> <p>閾捐〃瀹瑰櫒浣跨敤erase鍒犻櫎鑺傜偣榪樻湁涓涓壒鐐癸紝灝辨槸浼氬皢涓嬩竴涓厓绱犵殑鍦板潃榪斿洖錛屾墍浠ヤ篃鍙互榪欐牱瀹炵幇錛?/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: #000000">  list</span><span style="COLOR: #000000"><</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">></span><span style="COLOR: #000000">::iterator it; <br>  </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> (it </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> lt.begin(); it </span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000"> lt.end(); ) {<br>    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">it </span><span style="COLOR: #000000">%</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">2</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">)<br>      it </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> lt.erase(it);<br>    </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br>      </span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">it;<br>  }</span></div> <p><br>褰撶劧鐢╨ist瀹瑰櫒鏈韓鎻愪緵鐨勭畻娉曚篃鏄釜涓嶉敊鐨勪富鎰忥紙鎸傚洖璋冿級錛?/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: #000000">  </span><span style="COLOR: #0000ff">bool</span><span style="COLOR: #000000"> evenNumber(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> n)<br>  {<br>    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> (n </span><span style="COLOR: #000000">%</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">2</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">);<br>  }<br>  <br>  <img src="http://www.shnenglu.com/Images/dot.gif"><img src="http://www.shnenglu.com/Images/dot.gif"><br>  <br>  lt.remove_if(evenNumber);</span></div> <p><br>鏁扮粍瀹瑰櫒浠ector涓轟緥錛屽綋鎵цcontainer.erase(it)鏃訛紝鍜屼笂闈㈡彁鍒扮殑涓鏍鳳紝絎竴涓弧瓚蟲潯浠剁殑鍏冪礌鍒犻櫎浜嗭紝浣嗚繖鏃舵暟緇勫鍣ㄤ笉鍏佽涓棿鏈?#8220;絀洪殭”錛屾墍浠ヤ細鍋氫釜澶у姩浣滐紝灝辨槸灝嗚鍒犲厓绱犲悗闈㈡墍鏈夌殑鍏冪礌鍓嶇Щ錛堝弬鑰僑TL婧愮爜錛夛紝鑰屾暟緇勫鍣ㄨ褰曠殑鏄笅鏍囷紝鎵浠ュ垹闄ゅ厓绱犲悗錛屽綋鍓嶄笅鏍囧畾浣嶇殑鍏冪礌涔熷氨欏虹悊鎴愮珷鐨勫彉鎴愪簡鍘熸湁闃熷垪涓殑涓嬩竴涓厓绱狅紝鍚屾牱浠ュ垹闄ゅ伓鏁頒負渚嬶紝浠g爜濡備笅錛?/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: #000000">  vector</span><span style="COLOR: #000000"><</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">></span><span style="COLOR: #000000">::iterator it </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> v.begin();<br>  </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> (it </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> v.begin(); it </span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000"> v.end(); ) { <br>    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">it </span><span style="COLOR: #000000">%</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">2</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">)<br>      v.erase(it);<br>    </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"><br>      </span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">it;<br>  }</span></div> <p>涔熷彲浠ヤ嬌鐢╮everse_iterator榪唬鍣紝騫朵笖鍦ㄦ煇浜涘垹闄ゆ搷浣滀腑浼氭湁鏇村ソ鐨勬晥鐜囷紙鍥犱負瀹冧細浣夸笂闈㈡彁鍒扮殑“澶у姩浣?#8221;鍙樺皬涓浜涳級錛?/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: #000000">  vector</span><span style="COLOR: #000000"><</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">></span><span style="COLOR: #000000">::reverse_iterator ri </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> v.rbegin();<br>  </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> ( ; ri </span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000"> v.rend(); ) { <br>    </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">ri </span><span style="COLOR: #000000">%</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">2</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">) <br>      v.erase((</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">ri).</span><span style="COLOR: #0000ff">base</span><span style="COLOR: #000000">());<br>    </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"> <br>      </span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">ri;<br>  }</span></div> <p><br> </p> <img src ="http://www.shnenglu.com/wolf/aggbug/70368.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2008-12-26 00:03 <a href="http://www.shnenglu.com/wolf/articles/70368.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>嫻呮瀽C++ 澶т笁寰?/title><link>http://www.shnenglu.com/wolf/articles/68785.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Sun, 07 Dec 2008 13:14:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/68785.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/68785.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/68785.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/68785.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/68785.html</trackback:ping><description><![CDATA[<p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'">C++<font face=瀹嬩綋>涓嚑涔?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>鎵鏈夌殑綾婚兘鏈?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>鎷瘋礉</font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>鏋勯犲嚱鏁幫紝鏋愭瀯鍑芥暟鍜岃祴鍊兼搷浣滅</font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>閲嶈澆鍑芥暟錛屽嵆浣夸綘涓嶆樉紺哄畾涔夛紝緙栬瘧鍣ㄤ篃浼氳嚜鍔ㄧ敓鎴愮殑錛?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>瀹冧滑鎻愪緵鐨勯兘鏄竴浜涙渶鍩烘湰鐨勫姛鑳?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>銆?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>鎷瘋礉</font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>鏋勯犲嚱鏁?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>錛?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>涓縐嶇壒孌婄殑鏋勯犲嚱鏁幫紝浠栫敱緙栬瘧鍣ㄨ皟鐢ㄦ潵瀹屾垚涓浜涘熀浜庡悓涓綾葷殑鍏朵粬瀵硅薄鐨勬瀯浠跺強鍒濆鍖栵紱</font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>鏋愭瀯鍑芥暟</font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>錛?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>鎽ф瘉涓涓璞″茍淇濊瘉瀹冭褰誨簳娓呴櫎錛?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>璧嬪兼搷浣滅</font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>錛氫互宸叉湁瀵硅薄涓鴻摑鏈?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>緇?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>鍙︿竴</font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>瀵硅薄榪涜鏂扮殑</font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>璧?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><font face=瀹嬩綋>鍊箋?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Times New Roman'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>鎵璋撶殑澶т笁寰嬶紙rule of three, the law of the big three or the big three錛夋鏄湪瑙勫垯浠栦滑涔嬮棿鐨勫叧緋伙細</font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>1.濡傛灉綾誨畾涔変簡鏋愭瀯鍑芥暟錛岄偅涔堜篃搴旇瀹氫箟鎷瘋礉鏋勯犲拰璧嬪艱繍綆楃錛?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>2.濡傛灉綾誨惈鏈夐渶瑕佸姩鎬佸垎閰嶇殑鎴愬憳錛岄偅涔堣綾誨繀欏誨畾涔夋嫹璐濇瀯閫犲拰璧嬪艱繍綆楃錛?/font></span><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋>涓鍙ヨ瘽錛屾瀽鏋勫嚱鏁般佹嫹璐濇瀯閫犮佽祴鍊艱繍綆楃閲嶈澆搴旇鎬繪槸鍚屾椂鍑虹幇銆備笅闈竴涓畝鍗曠殑渚嬪瓙紼嬪簭瀵硅繖涓畾寰嬪仛浜嗚璇侊細</font></span></p> <p class=p0 style="MARGIN-TOP: 0pt; MARGIN-BOTTOM: 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: '瀹嬩綋'; mso-spacerun: 'yes'"><font face=瀹嬩綋></font></span></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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#include </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">iostream</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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 3</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000"> std;<br></span><span style="COLOR: #008080"> 4</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 5</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> Test<br></span><span style="COLOR: #008080"> 6</span><span style="COLOR: #000000"><img id=Codehighlighter1_54_209_Open_Image onclick="this.style.display='none'; Codehighlighter1_54_209_Open_Text.style.display='none'; Codehighlighter1_54_209_Closed_Image.style.display='inline'; Codehighlighter1_54_209_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_54_209_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_54_209_Closed_Text.style.display='none'; Codehighlighter1_54_209_Open_Image.style.display='inline'; Codehighlighter1_54_209_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_54_209_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_54_209_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080"> 7</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  </span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080"> 8</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    Test() <br></span><span style="COLOR: #008080"> 9</span><span style="COLOR: #000000"><img id=Codehighlighter1_82_121_Open_Image onclick="this.style.display='none'; Codehighlighter1_82_121_Open_Text.style.display='none'; Codehighlighter1_82_121_Closed_Image.style.display='inline'; Codehighlighter1_82_121_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_82_121_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_82_121_Closed_Text.style.display='none'; Codehighlighter1_82_121_Open_Image.style.display='inline'; Codehighlighter1_82_121_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    </span><span id=Codehighlighter1_82_121_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_82_121_Open_Text><span style="COLOR: #000000">{  <br></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>      _pdata </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">100</span><span style="COLOR: #000000">]; <br></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">12</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">13</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #000000">~</span><span style="COLOR: #000000">Test() <br></span><span style="COLOR: #008080">14</span><span style="COLOR: #000000"><img id=Codehighlighter1_142_174_Open_Image onclick="this.style.display='none'; Codehighlighter1_142_174_Open_Text.style.display='none'; Codehighlighter1_142_174_Closed_Image.style.display='inline'; Codehighlighter1_142_174_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_142_174_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_142_174_Closed_Text.style.display='none'; Codehighlighter1_142_174_Open_Image.style.display='inline'; Codehighlighter1_142_174_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>    </span><span id=Codehighlighter1_142_174_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_142_174_Open_Text><span style="COLOR: #000000">{ <br></span><span style="COLOR: #008080">15</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>      delete [] _pdata; <br></span><span style="COLOR: #008080">16</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>    }</span></span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">17</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  <br></span><span style="COLOR: #008080">18</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  </span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">:<br></span><span style="COLOR: #008080">19</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>    </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> _pdata;<br></span><span style="COLOR: #008080">20</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">21</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">22</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">23</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main()<br></span><span style="COLOR: #008080">24</span><span style="COLOR: #000000"><img id=Codehighlighter1_225_273_Open_Image onclick="this.style.display='none'; Codehighlighter1_225_273_Open_Text.style.display='none'; Codehighlighter1_225_273_Closed_Image.style.display='inline'; Codehighlighter1_225_273_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_225_273_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_225_273_Closed_Text.style.display='none'; Codehighlighter1_225_273_Open_Image.style.display='inline'; Codehighlighter1_225_273_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_225_273_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_225_273_Open_Text><span style="COLOR: #000000">{ <br></span><span style="COLOR: #008080">25</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  Test a;<br></span><span style="COLOR: #008080">26</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  Test b;<br></span><span style="COLOR: #008080">27</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  <br></span><span style="COLOR: #008080">28</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  b </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> a;<br></span><span style="COLOR: #008080">29</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">30</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/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.shnenglu.com/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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span></div> 涓婇潰榪欎箞涓孌電畝鍗曠殑浠g爜鐪嬩技娌′粈涔堥棶棰橈紝鐒惰屽嵈闅愯棌鐫涓ラ噸鐨勫唴瀛樻硠闇層?br>鍦?5琛屽畾涔変簡涓涓被鐨勫璞★紝鍚屾椂瀵硅薄a涓殑鏁版嵁鎴愬憳_pdata涔熷湪鍫嗕腑鍒嗛厤浜嗗唴瀛橈紝鍚岀悊26琛屽瀵硅薄b鍋氫簡鍚屾牱鐨勪簨鎯咃紝鐒惰?8琛屽灝哸璧嬪肩粰b錛岄粯璁よ祴鍊艱繍綆楃鍋氱殑鏄鏁版嵁鎴愬憳閫愪釜鐨勮祴鍊鹼紝鎴栬呰鏄仛浜嗘祬鎷瘋礉錛屾墍浠ュ璞涓殑鎴愬憳_pdata鎸囧悜浜嗚窡瀵硅薄a涓殑_pdata鐨勫悓涓鍧楀唴瀛橈紝鍦ㄦ瀽鏋勭殑鏃跺欏氨浼氫駭鐢焌涓殑_pdata鎸囧悜鐨勯偅鍧楀唴瀛樿閲婃斁浜嗕袱嬈★紝鑰屽師鍏堝璞涓垎閰嶇殑鍐呭瓨鍗存病鏈夐噴鏀劇殑闂銆?br>濡傛灉灝?6銆?8琛屾崲鎴怲est b = a鎴朤est b(a)錛岀粨鏋滄槸涓鏍風(fēng)殑錛屼笉鍚岀殑鏄皟鐢ㄧ殑鏄嫹璐濇瀯閫犲嚱鏁般?br><br>鏃㈢劧鐭ラ亾浜嗛棶棰樻墍鍦紝閭d箞瑙e喅鐨勬柟娉曞綋鐒惰嚜宸辨潵瀹氫箟鎷瘋礉鏋勯犲拰璧嬪艱繍綆楃浜嗭紝鍏蜂綋鍋氭硶灝變笉鍒椾婦浜嗐?br><br>鍦ㄦ煇浜涙儏鍐典笅錛屽疄鐜扮被鐨勬嫹璐濇瀯閫犲嚱鏁板拰璧嬪兼搷浣滅鏄潪甯擱夯鐑︾殑鏃跺欙紝鐗瑰埆鏄‘瀹氱▼搴忎腑涓嶄細鍋氭嫹璐濆拰璧嬪兼搷浣滅殑鏃跺欙紝鍘誨疄鐜板畠浠‘瀹炴湁鐐瑰緱涓嶅伩澶便傝屼笉瀹氫箟鍙堟曞嚭鐜頒笂榪伴棶棰橈紝鍦ㄨ繖閲屾湁涓閥濡欙紙涓庡叾璇村閥濡欎笉濡傝鍋鋒噿:-)錛夌殑鏂規(guī)硶錛屽氨鏄彲浠ュ彧灝嗗畠浠0鏄庝負private鎴愬憳鑰屼笉鍘誨疄鐜板畠浠傝繖鏍鋒棦鍙互闃叉浜嗕細鏈変漢鍘繪樉紺鴻皟鐢ㄥ畠浠紝涔熼槻姝簡緙栬瘧鍣ㄨ嚜鍔ㄧ敓鎴愩?br><br>欏轟究鎻愪竴涓嬫嫹璐濇瀯閫犺璋冪敤鐨勪笁縐嶅満鍚堬細<br>1.鍦ㄥ0鏄庤鍙ヤ腑鐢ㄤ竴涓璞″垵濮嬪寲鍙︿竴涓璞★紱<br>2.灝嗕竴涓璞′綔涓哄弬鏁版寜鍊艱皟鐢ㄦ柟寮忎紶閫掔粰鍙︿竴涓璞℃椂鐢熸垚瀵硅薄鍓湰錛?br>3.鐢熸垚涓涓復(fù)鏃跺璞′綔涓哄嚱鏁扮殑榪斿洖緇撴灉錛?br><!--endfragment--> <img src ="http://www.shnenglu.com/wolf/aggbug/68785.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2008-12-07 21:14 <a href="http://www.shnenglu.com/wolf/articles/68785.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>榪斿洖static鍐呴儴鍙橀噺鐨勯櫡闃?/title><link>http://www.shnenglu.com/wolf/articles/67811.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Tue, 25 Nov 2008 07:06:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/67811.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/67811.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/67811.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/67811.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/67811.html</trackback:ping><description><![CDATA[鍏堢湅涓涓緥瀛愶細<br> <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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">#include </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">stdio.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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>#include </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">stdlib.h</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080"> 3</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>#include </span><span style="COLOR: #000000"><</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">.h</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080"> 4</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 5</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> fun(</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> src)<br></span><span style="COLOR: #008080"> 6</span><span style="COLOR: #000000"><img id=Codehighlighter1_87_158_Open_Image onclick="this.style.display='none'; Codehighlighter1_87_158_Open_Text.style.display='none'; Codehighlighter1_87_158_Closed_Image.style.display='inline'; Codehighlighter1_87_158_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_87_158_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_87_158_Closed_Text.style.display='none'; Codehighlighter1_87_158_Open_Image.style.display='inline'; Codehighlighter1_87_158_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_87_158_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_87_158_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080"> 7</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> dest[</span><span style="COLOR: #000000">32</span><span style="COLOR: #000000">] </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">""</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080"> 8</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  <br></span><span style="COLOR: #008080"> 9</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  strcpy(dest, src);<br></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">11</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> dest;<br></span><span style="COLOR: #008080">12</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br></span><span style="COLOR: #008080">13</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080">14</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main()<br></span><span style="COLOR: #008080">15</span><span style="COLOR: #000000"><img id=Codehighlighter1_172_365_Open_Image onclick="this.style.display='none'; Codehighlighter1_172_365_Open_Text.style.display='none'; Codehighlighter1_172_365_Closed_Image.style.display='inline'; Codehighlighter1_172_365_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_172_365_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_172_365_Closed_Text.style.display='none'; Codehighlighter1_172_365_Open_Image.style.display='inline'; Codehighlighter1_172_365_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_172_365_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_172_365_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">16</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> s1[</span><span style="COLOR: #000000">32</span><span style="COLOR: #000000">] </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">""</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">17</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> s2[</span><span style="COLOR: #000000">32</span><span style="COLOR: #000000">] </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">""</span><span style="COLOR: #000000">;<br></span><span style="COLOR: #008080">18</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">19</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  strcpy(s1, fun(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">hello</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">));<br></span><span style="COLOR: #008080">20</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  strcpy(s2, fun(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">world</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">));<br></span><span style="COLOR: #008080">21</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">22</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">%s %s\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">, s1, s2);<br></span><span style="COLOR: #008080">23</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">%s %s\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">, fun(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">hello</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">), fun(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">world</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">));<br></span><span style="COLOR: #008080">24</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top><br></span><span style="COLOR: #008080">25</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/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">26</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div> <p>    璇諱竴涓嬭繖涓▼搴忥紝鍏堢湅榪欎釜紼嬪簭鍐欑殑鏈夐棶棰樻病錛堝亣璁緁un鍑芥暟鐨勫弬鏁伴暱搴﹀皬浜?2錛夛紵濡傛灉浣犲榪欎釜紼嬪簭涓殑fun鍑芥暟榪斿洖涓涓眬閮ㄥ彉閲忕殑鏁扮粍浜х敓浜嗙枒闂紝閭d箞鎴戝笇鏈涗綘鏄病娉ㄦ剰鍒版垜浣跨敤鐨剆tatic綾誨瀷錛岃嫢浣犱粛鏈夌枒闂紝寤鴻浣犲厛鍥炲幓鏌ユ煡static鍙橀噺鐨勪綔鐢ㄥ煙鍜岀敓鍛藉懆鏈熺殑姒傚康銆?br>    OK錛屾槸榪愯榪欎釜紼嬪簭鐨勬椂鍊欎簡錛岀湅涓涓嬭繍琛岀粨鏋滄槸鍚﹁窡浣犳兂璞$殑涓鏍峰憿錛熷鏋滄槸涓鏍風(fēng)殑錛岄偅涔堣繖綃囨枃绔犱綘涓嶇敤鐪嬩簡錛屽洜涓轟綘宸茬粡鎺屾彙浜嗘垜涓嬮潰瑕佽鐨勯棶棰樹簡銆傚ソ鍚э紝瀵逛簬涓嶇悊瑙h繍琛岀粨鏋滅殑鏈嬪弸錛屾垜浠潵鍒嗘瀽涓浜涗笅闈㈤偅涓猵rintf璇彞錛岄鍏堣鐭ラ亾printf涓殑琛ㄨ揪寮忋佸嚱鏁扮殑鎵ц欏哄簭鏄嚦鍙沖悜宸︾殑錛屼篃灝辨槸鍏堟墽琛屼簡fun("world")榪斿洖浜哾est鐨勫湴鍧錛岀劧鍚庡啀鎵цfun("hello")涔熻繑鍥炰簡dest鐨勫湴鍧錛岃岃繖涓ゆ榪斿洖鐨刣est鐢ㄧ殑鍚屼竴鍧楀湴鍧錛堝洜涓烘槸static綾誨瀷錛夛紝涔熷氨鏄浜屾鐨勬墽琛岃鐩栦簡絎竴嬈℃墽琛岀殑緇撴灉錛屽dest鍦板潃榪涜浜嗛噸鏂扮殑璧嬪鹼紝鎵浠ョ粨鏋滃氨鏄墦鍗頒袱涓猦ello浜嗐?/p> <p><br>    鎴戜滑鍦ㄥ啓C/C++紼嬪簭鐨勬椂鍊欙紝緇忓父闇瑕佷粠璋冪敤鍑芥暟涓彇寰楄嚜宸辨兂瑕佺殑鏁版嵁錛岃繖灝遍渶瑕佽皟鐢ㄨ呭拰鍑芥暟涔嬮棿瑕佹湁涓唴瀛樼殑浜や簰錛屾垜浠氬父閲囩敤鐨勬柟娉曟槸浼犻掍竴涓寚閽堢粰琚皟鍑芥暟錛屼綔涓鴻璋冨嚱鏁扮殑杈撳嚭鍙傛暟錛岃繖涔熸槸鎴戜滑甯哥敤鐨勩佽鑼冪殑鍋氭硶銆?br>    浣嗘湁寰堝紼嬪簭鍛樻瘮杈冧範(fàn)鎯洿鎺ュ彇榪斿洖鍊鹼紝榪欏氨闈復(fù)涓涓棶棰樺氨鏄櫘閫氬眬閮ㄥ彉閲忛兘鏄湪鏍堜笂鍒嗘淳鐨勶紝浼氶殢鐫鍑芥暟鐨勭粨鏉熻屽脊鏍堥噴鏀撅紝閭d箞灝變細鍑虹幇榪斿洖灞閮ㄥ彉閲忔暟緇勭殑闂錛岃繖鏃舵湁浜轟細鎯沖埌鐢╩alloc鎴杗ew鍦ㄥ爢涓婂垎媧懼唴瀛橈紝娌¢敊錛岃繖鏍鋒槸閬垮厤浜嗗墠闈㈣鐨勯棶棰橈紝浣嗚繖鏍峰張浼氬甫鏉ユ柊鐨勯棶棰橈紝灝辨槸闇瑕佸湪澶栭儴瀵硅繖鍧楀唴瀛樿繘琛岄噴鏀撅紝榪欎釜鏄瘮杈冮毦鎶婃彙鐨勶紝澶氭閲婃斁浼氬嚭鐜扮▼搴忕殑crash錛屽繕璁伴噴鏀句簡浼氬嚭鐜板唴瀛榣eak錛屾墍浠ヨ繖縐嶆柟娉曚篃涓嶈鎺ㄨ崘銆傝繕鏈変漢鎯沖埌浜嗘洿鍙︾被鐨勬柟娉曪紝灝辨槸涓婇潰渚嬪瓙涓殑static綾誨瀷錛屾病閿欙紝static鍙橀噺涔熸槸鍏ㄥ眬鐨勶紝浣嗗氨浼氬嚭鐜頒笂闈㈢▼搴忕殑榪愯緇撴灉錛堝彲浠ヨ涓轟笉鏄垜浠兂瑕佺殑緇撴灉錛屼篃灝辨槸閿欒鐨勭粨鏋滐級銆?br>    鎵浠ワ紝鎴戜滑瑕佹厧鐢ㄨ繑鍥炲嚱鏁板唴閮ㄧ殑static鍐呭瓨鐨勮繖縐嶈璁★紝浣嗗鏋滃湪鏃犳硶鏀瑰彉璁捐妯″紡鐨勬儏鍐典笅錛堟湁浜涚郴緇熷嚱鏁扮殑瀹炵幇錛屾瘮濡俰net_ntoa錛屽彲浠ラ氳繃鍦╩an鎵嬪唽涓湅鍒拌繖鏍風(fēng)殑涓鍙ヨ瘽錛歍he string is returned in a statically allocated buffer, which subsequent calls will overwrite錛夛紝閭d箞鍦ㄨ嚜宸變嬌鐢ㄧ殑鏃跺欎竴瀹氳娉ㄦ剰錛屼笉瑕佽瘯鍥句繚瀛樿繑鍥炵殑鍐呭瓨鍦板潃鎴栧紩鐢紝鑰岃淇濆瓨榪斿洖鍐呭瓨鐨勫唴瀹癸紝涔熷氨鏄緥瀛愮▼搴忎腑鐨剆trcpy涓よ銆?br><br>inet_ntoa鐨勯敊璇嬌鐢紙鍒ゆ柇涓や釜IP鍦板潃鏄惁鐩哥瓑錛夛細<br></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.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">struct</span><span style="COLOR: #000000"> in_addr addr1;<br></span><span style="COLOR: #008080"> 2</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">struct</span><span style="COLOR: #000000"> in_addr addr2;<br></span><span style="COLOR: #008080"> 3</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 4</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 緗戠粶鍖呬腑鍖呭惈浜嗘簮鍦板潃</span><span style="COLOR: #008000"><br></span><span style="COLOR: #008080"> 5</span><span style="COLOR: #008000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">addr1.s_addr </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0x6500A8C0</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 192.168.0.101</span><span style="COLOR: #008000"><br></span><span style="COLOR: #008080"> 6</span><span style="COLOR: #008000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">addr2.s_addr </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0x6600A8C0</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 192.168.0.102<br></span><span style="COLOR: #008080"> 7</span><span style="COLOR: #008000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br></span><span style="COLOR: #008080"> 8</span><span style="COLOR: #008000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> 榪欎釜if璇彞灝嗘案榪滀負鐪?/span><span style="COLOR: #008000"><br></span><span style="COLOR: #008080"> 9</span><span style="COLOR: #008000"><img id=Codehighlighter1_214_234_Open_Image onclick="this.style.display='none'; Codehighlighter1_214_234_Open_Text.style.display='none'; Codehighlighter1_214_234_Closed_Image.style.display='inline'; Codehighlighter1_214_234_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_214_234_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_214_234_Closed_Text.style.display='none'; Codehighlighter1_214_234_Open_Image.style.display='inline'; Codehighlighter1_214_234_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (strcmp(inet_ntoa(addr1), inet_ntoa(addr2)) </span><span style="COLOR: #000000">==</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">) </span><span id=Codehighlighter1_214_234_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_214_234_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">10</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> do something</span><span style="COLOR: #008000"><br></span><span style="COLOR: #008080">11</span><span style="COLOR: #008000"><img id=Codehighlighter1_241_263_Open_Image onclick="this.style.display='none'; Codehighlighter1_241_263_Open_Text.style.display='none'; Codehighlighter1_241_263_Closed_Image.style.display='inline'; Codehighlighter1_241_263_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_241_263_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_241_263_Closed_Text.style.display='none'; Codehighlighter1_241_263_Open_Image.style.display='inline'; Codehighlighter1_241_263_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span style="COLOR: #000000">}</span></span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"> </span><span id=Codehighlighter1_241_263_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.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_241_263_Open_Text><span style="COLOR: #000000">{<br></span><span style="COLOR: #008080">12</span><span style="COLOR: #000000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>  </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000"> do other thing</span><span style="COLOR: #008000"><br></span><span style="COLOR: #008080">13</span><span style="COLOR: #008000"><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top></span><span style="COLOR: #000000">}</span></span></div> <img src ="http://www.shnenglu.com/wolf/aggbug/67811.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2008-11-25 15:06 <a href="http://www.shnenglu.com/wolf/articles/67811.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>涓夊厓榪愮畻絎︾殑浣跨敤http://www.shnenglu.com/wolf/articles/66898.html鑰佺嫾鑰佺嫾Fri, 14 Nov 2008 04:03:00 GMThttp://www.shnenglu.com/wolf/articles/66898.htmlhttp://www.shnenglu.com/wolf/comments/66898.htmlhttp://www.shnenglu.com/wolf/articles/66898.html#Feedback0http://www.shnenglu.com/wolf/comments/commentRss/66898.htmlhttp://www.shnenglu.com/wolf/services/trackbacks/66898.html涓夊厓榪愮畻絎﹀浜嶤紼嬪簭鍛樻潵璇村簲璇ユ槸寰堢啛鎮(zhèn)夌殑浜嗭紝鏈夋椂瀹冨彲浠ヤ嬌浠g爜鏇寸畝媧併佹竻鏅幫紝鎵浠ユ繁寰椾竴閮ㄥ垎紼嬪簭鍛樼殑鍠滅埍錛屼絾鍦ㄤ嬌鐢ㄤ笂鏄笉鏄瘡涓涓▼搴忓憳閮界煡閬撳畠鐨勫噯紜敤娉曞憿錛熶粖澶╂湁浜虹粰鎴戠湅浜嗕竴涓潪甯哥畝鍗曠殑紼嬪簭錛岄棶鎴戜負浠涔堢紪璇戝嚭閿欙紝鎴戞墠鐭ラ亾鍘熸潵鐪熺殑鏈変漢浼氬拷鐣ヨ繖涓棶棰橈紝浠g爜濡備笅錛?br>

#include <iostream>

using namespace std;

int main()
{
  
int a = 1;
  
  (a 
!= 1? a = 2 : cout << "hello" << endl;

  
return 0;
}

鍙戠幇闂浜嗗悧錛熸垜璁╀粬鎶奵out鏀規(guī)垚浜唒rintf錛屽張璁╀粬浠旂粏鐪嬩簡緙栬瘧閿欒鐨勪俊鎭紝騫朵笖man printf鐪嬭繑鍥炲箋?br>鏄殑錛屼笁鍏冭繍綆楃鐨勪袱涓〃杈懼紡鏄渶瑕佺殑int綾誨瀷錛岃宑out榪斿洖鍊兼槸void*錛岀湅鏉ユ垜浠父鐢ㄧ殑鏈繀閮芥槸鎴戜滑鐪熸鎺屾彙鐨?img src="http://www.shnenglu.com/CuteSoft_Client/CuteEditor/images/emsmile.gif" align=absMiddle border=0>


鑰佺嫾 2008-11-14 12:03 鍙戣〃璇勮
]]>
浣跨敤getopt鍒嗘瀽鍛戒護琛屽弬鏁?/title><link>http://www.shnenglu.com/wolf/articles/63962.html</link><dc:creator>鑰佺嫾</dc:creator><author>鑰佺嫾</author><pubDate>Tue, 14 Oct 2008 07:56:00 GMT</pubDate><guid>http://www.shnenglu.com/wolf/articles/63962.html</guid><wfw:comment>http://www.shnenglu.com/wolf/comments/63962.html</wfw:comment><comments>http://www.shnenglu.com/wolf/articles/63962.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.shnenglu.com/wolf/comments/commentRss/63962.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/wolf/services/trackbacks/63962.html</trackback:ping><description><![CDATA[<div style="PADDING-RIGHT: 5px; PADDING-LEFT: 4px; FONT-SIZE: 13px; BORDER-LEFT-COLOR: rgb(204,204,204); PADDING-BOTTOM: 4px; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BACKGROUND-COLOR: rgb(238,238,238)"><span style="COLOR: rgb(0,0,255)">getopt錛堬級鍘熷瀷錛?/span></div> <div style="PADDING-RIGHT: 5px; PADDING-LEFT: 4px; FONT-SIZE: 13px; BORDER-LEFT-COLOR: rgb(204,204,204); PADDING-BOTTOM: 4px; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BACKGROUND-COLOR: rgb(238,238,238)"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> getopt( </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> argc, </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">*</span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> argv[], </span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">optstring );</span></div> 鍙傛暟argc銆乤rgv鍒嗗埆瀵瑰簲main鍑芥暟鐨勫弬鏁幫紝琛ㄧず鍙傛暟涓暟鍜屽弬鏁版暟緇勶紝optstring涓洪夐」瀛楃涓層俫etopt鍑芥暟璋冪敤浼氳繑鍥炵涓涓夐」錛屽鏋滀互鐩稿悓鐨勫弬鏁板啀嬈¤皟鐢ㄧ殑璇濅細榪斿洖涓嬩竴涓夐」錛屼互姝ょ被鎺紝褰撳弬鏁板垪宸茬粡鍒扮粨灝炬椂getopt()鍑芥暟榪斿洖-1錛屽綋閬囧埌涓涓湭鐭ョ殑閫夐」鏃?getopt 榪斿洖'?'錛屽茍涓旀瘡嬈¢兘浼氶噸鏂拌緗浉搴旂殑鍏ㄥ眬鍙橀噺銆? <div>getopt()璁劇疆鐨勫叏灞鍙橀噺鍖呮嫭錛?/div> <div>1.optarg(char*) -- 鎸囧悜褰撳墠閫夐」鍙傛暟鐨勬寚閽堬紱</div> <div>2.optind(int)   -- 鍐嶆璋冪敤getopt()鏃剁殑涓嬩竴涓猘rgv鎸囬拡鐨勭儲寮曪紱</div> <div>3.optopt(int)   -- 鏈鍚庝竴嬈¤皟鐢╣etopt()榪斿洖鐨勫凡鐭ラ夐」錛?/div> <div>4.opterr(int)   -- 鍙橀噺opterr琚垵濮嬪寲涓?銆傚鏋滀笉甯屾湜getopt()杈撳嚭鍑洪敊淇℃伅錛屽皢鍏ㄥ煙鍙橀噺opterr璁句負0鍗沖彲錛?/div> <div>鐢ㄤ竴涓嚜宸卞簲鐢ㄥ埌鐨勪緥瀛愭潵綆鍗曡В鏋愯鍑芥暟錛?/div> <div><span style="FONT-SIZE: 13px"><span style="COLOR: rgb(0,128,128)"> 1</span> <span style="COLOR: rgb(0,0,0)">#include </span><span style="COLOR: rgb(0,0,0)"><</span><span style="COLOR: rgb(0,0,0)">stdio.h</span><span style="COLOR: rgb(0,0,0)">></span><span style="COLOR: rgb(0,0,0)"><br></span><span style="COLOR: rgb(0,128,128)"> 2</span> <span style="COLOR: rgb(0,0,0)">#include </span><span style="COLOR: rgb(0,0,0)"><</span><span style="COLOR: rgb(0,0,0)">unistd.h</span><span style="COLOR: rgb(0,0,0)">></span><span style="COLOR: rgb(0,0,0)"><br></span><span style="COLOR: rgb(0,128,128)"> 3</span> <span style="COLOR: rgb(0,0,0)"><br></span><span style="COLOR: rgb(0,128,128)"> 4</span> <span style="COLOR: rgb(0,0,0)"></span><span style="COLOR: rgb(0,0,255)">int</span><span style="COLOR: rgb(0,0,0)"> main(</span><span style="COLOR: rgb(0,0,255)">int</span><span style="COLOR: rgb(0,0,0)"> argc, </span><span style="COLOR: rgb(0,0,255)">char</span><span style="COLOR: rgb(0,0,0)">**</span><span style="COLOR: rgb(0,0,0)"> argv )<br></span><span style="COLOR: rgb(0,128,128)"> 5</span> <span style="COLOR: rgb(0,0,0)">{<br></span><span style="COLOR: rgb(0,128,128)"> 6</span> <span style="COLOR: rgb(0,0,0)">  </span><span style="COLOR: rgb(0,0,255)">int</span><span style="COLOR: rgb(0,0,0)"> ch錛宒estConsole = 0; <br></span><span style="COLOR: rgb(0,128,128)"> 7</span> <span style="COLOR: rgb(0,0,0)">  </span><span style="COLOR: rgb(0,0,255)">int</span><span style="COLOR: rgb(0,0,0)"> def </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,0)">0</span><span style="COLOR: rgb(0,0,0)">;<br></span><span style="COLOR: rgb(0,128,128)"> 8</span> <span style="COLOR: rgb(0,0,0)">  </span><span style="COLOR: rgb(0,0,255)">char</span><span style="COLOR: rgb(0,0,0)">*</span><span style="COLOR: rgb(0,0,0)"> buf[</span><span style="COLOR: rgb(0,0,0)">4</span><span style="COLOR: rgb(0,0,0)">];<br></span><span style="COLOR: rgb(0,128,128)"> 9</span> <span style="COLOR: rgb(0,0,0)"><br></span><span style="COLOR: rgb(0,128,128)">10</span> <span style="COLOR: rgb(0,0,0)">  opterr </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,0)">0</span><span style="COLOR: rgb(0,0,0)">;<br></span><span style="COLOR: rgb(0,128,128)">11</span> <span style="COLOR: rgb(0,0,0)">  </span><span style="COLOR: rgb(0,0,255)">while</span><span style="COLOR: rgb(0,0,0)"> ((ch </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> getopt(argc, argv, </span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">Of:h:p:</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">))</span><span style="COLOR: rgb(0,0,0)">!=</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,0)">-</span><span style="COLOR: rgb(0,0,0)">1</span><span style="COLOR: rgb(0,0,0)">) {<br></span><span style="COLOR: rgb(0,128,128)">12</span> <span style="COLOR: rgb(0,0,0)">    </span><span style="COLOR: rgb(0,0,255)">switch</span><span style="COLOR: rgb(0,0,0)">(ch) {<br></span><span style="COLOR: rgb(0,128,128)">13</span> <span style="COLOR: rgb(0,0,0)">      </span><span style="COLOR: rgb(0,0,255)">case</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,0)">'</span><span style="COLOR: rgb(0,0,0)">O</span><span style="COLOR: rgb(0,0,0)">'</span><span style="COLOR: rgb(0,0,0)">:<br></span><span style="COLOR: rgb(0,128,128)">14</span> <span style="COLOR: rgb(0,0,0)">        buf[</span><span style="COLOR: rgb(0,0,0)">0</span><span style="COLOR: rgb(0,0,0)">] </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> optarg;<br></span><span style="COLOR: rgb(0,128,128)">15</span> <span style="COLOR: rgb(0,0,0)">        </span><span style="COLOR: rgb(0,0,255)">break</span><span style="COLOR: rgb(0,0,0)">;<br></span><span style="COLOR: rgb(0,128,128)">16</span> <span style="COLOR: rgb(0,0,0)">      </span><span style="COLOR: rgb(0,0,255)">case</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,0)">'</span><span style="COLOR: rgb(0,0,0)">f</span><span style="COLOR: rgb(0,0,0)">'</span><span style="COLOR: rgb(0,0,0)">:<br></span><span style="COLOR: rgb(0,128,128)">17</span> <span style="COLOR: rgb(0,0,0)">        buf[</span><span style="COLOR: rgb(0,0,0)">1</span><span style="COLOR: rgb(0,0,0)">] </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> optarg;<br></span><span style="COLOR: rgb(0,128,128)">18</span> <span style="COLOR: rgb(0,0,0)">        </span><span style="COLOR: rgb(0,0,255)">break</span><span style="COLOR: rgb(0,0,0)">;<br></span><span style="COLOR: rgb(0,128,128)">19</span> <span style="COLOR: rgb(0,0,0)">      </span><span style="COLOR: rgb(0,0,255)">case</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,0)">'</span><span style="COLOR: rgb(0,0,0)">h</span><span style="COLOR: rgb(0,0,0)">'</span><span style="COLOR: rgb(0,0,0)">:<br></span><span style="COLOR: rgb(0,128,128)">20</span> <span style="COLOR: rgb(0,0,0)">        buf[</span><span style="COLOR: rgb(0,0,0)">2</span><span style="COLOR: rgb(0,0,0)">] </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> optarg;<br></span><span style="COLOR: rgb(0,128,128)">21</span> <span style="COLOR: rgb(0,0,0)">        </span><span style="COLOR: rgb(0,0,255)">break</span><span style="COLOR: rgb(0,0,0)">;<br></span><span style="COLOR: rgb(0,128,128)">22</span> <span style="COLOR: rgb(0,0,0)">      </span><span style="COLOR: rgb(0,0,255)">case</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,0)">'</span><span style="COLOR: rgb(0,0,0)">p</span><span style="COLOR: rgb(0,0,0)">'</span><span style="COLOR: rgb(0,0,0)">:<br></span><span style="COLOR: rgb(0,128,128)">23</span> <span style="COLOR: rgb(0,0,0)">        buf[</span><span style="COLOR: rgb(0,0,0)">3</span><span style="COLOR: rgb(0,0,0)">] </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> optarg;<br></span><span style="COLOR: rgb(0,128,128)">24</span> <span style="COLOR: rgb(0,0,0)">        </span><span style="COLOR: rgb(0,0,255)">break</span><span style="COLOR: rgb(0,0,0)">;<br></span><span style="COLOR: rgb(0,128,128)">25</span> <span style="COLOR: rgb(0,0,0)">      </span><span style="COLOR: rgb(0,0,255)">default</span><span style="COLOR: rgb(0,0,0)">:<br></span><span style="COLOR: rgb(0,128,128)">26</span> <span style="COLOR: rgb(0,0,0)">        def </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,0)">1</span><span style="COLOR: rgb(0,0,0)">;<br></span><span style="COLOR: rgb(0,128,128)">27</span> <span style="COLOR: rgb(0,0,0)">    }   <br></span><span style="COLOR: rgb(0,128,128)">28</span> <span style="COLOR: rgb(0,0,0)">  }<br></span><span style="COLOR: rgb(0,128,128)">29</span> <span style="COLOR: rgb(0,0,0)"><br></span><span style="COLOR: rgb(0,128,128)">30</span> <span style="COLOR: rgb(0,0,0)">  printf(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">buf[0]: %s\n</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">, buf[</span><span style="COLOR: rgb(0,0,0)">0</span><span style="COLOR: rgb(0,0,0)">]);<br></span><span style="COLOR: rgb(0,128,128)">31</span> <span style="COLOR: rgb(0,0,0)">  printf(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">buf[1]: %s\n</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">, buf[</span><span style="COLOR: rgb(0,0,0)">1</span><span style="COLOR: rgb(0,0,0)">]);<br></span><span style="COLOR: rgb(0,128,128)">32</span> <span style="COLOR: rgb(0,0,0)">  printf(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">buf[2]: %s\n</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">, buf[</span><span style="COLOR: rgb(0,0,0)">2</span><span style="COLOR: rgb(0,0,0)">]);<br></span><span style="COLOR: rgb(0,128,128)">33</span> <span style="COLOR: rgb(0,0,0)">  printf(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">buf[3]: %d\n</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">, atoi(buf[</span><span style="COLOR: rgb(0,0,0)">3</span><span style="COLOR: rgb(0,0,0)">]));<br></span><span style="COLOR: rgb(0,128,128)">34</span> <span style="COLOR: rgb(0,0,0)"><br></span><span style="COLOR: rgb(0,128,128)">35</span> <span style="COLOR: rgb(0,0,0)">  </span><span style="COLOR: rgb(0,0,255)">return</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,0)">0</span><span style="COLOR: rgb(0,0,0)">;<br></span><span style="COLOR: rgb(0,128,128)">36</span> <span style="COLOR: rgb(0,0,0)">}</span></span><br></div> <div><span style="FONT-SIZE: 13px">榪欐槸涓涓褰曟棩蹇楃殑紼嬪簭閮ㄥ垎浠g爜錛堟病鍋氬嚭閿欏鐞嗭級錛屽悓鏃舵敮鎸佺粓绔緭鍑恒佸啓鏂囦歡銆佽繙紼嬩紶杈撶瓑鍔熻兘錛堣繕鏈変竴浜涘啓鏁版嵁搴撶瓑錛屼笉涓涓鍒椾婦錛夈?/span></div> <div><span style="FONT-SIZE: 13px">閫夐」瀛楃涓蹭負錛?#8220;Of:h:p:”錛?/span></div> <div><span style="FONT-SIZE: 13px">O琛ㄧず鏄棤鍙傛暟閫夐」錛岀粓绔緭鍑哄垽鏂儴鍒嗗湪14琛岋紝鍙互鍔犱竴琛岀粰緇堢杈撳嚭璁劇疆鏍囪錛屾瘮濡俤estConsole=1錛屾棤鍙傛暟鑷劧瀵瑰簲30琛屽氨搴旇鎵撳嵃絀猴紱</span></div> <div><span style="FONT-SIZE: 13px">f銆乭銆乸閮戒負鏈夊弬鏁伴夐」錛屽鏋滈兘鏈夎緗湁鏁堬紝閭d箞瀵瑰簲鐨勫氨浼氬湪31-33琛屽垎鍒墦鍗版枃浠跺悕銆佷富鏈哄悕銆佺鍙e彿銆?/span></div> <div><span style="FONT-SIZE: 13px">榪愯緇撴灉錛?/span></div> <div><span style="FONT-SIZE: 13px"> <div>[root@develop-x /]# ./testOpt -O -f test.txt -h 192.168.0.111 -p 6666</div> <div>buf[0]: </div> <div>buf[1]: test.txt</div> <div>buf[2]: 192.168.0.111</div> <div>buf[3]: 6666</div> <div>澶嶆潅鍛戒護琛屽鐞唃etopt_long()鍙互鍙傝僲an鍜実etopt()錛屼富瑕佹槸澧炲己浜嗛暱閫夐」鐨勫姛鑳姐?/div> </span></div> <img src ="http://www.shnenglu.com/wolf/aggbug/63962.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/wolf/" target="_blank">鑰佺嫾</a> 2008-10-14 15:56 <a href="http://www.shnenglu.com/wolf/articles/63962.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>C++鏋勯犲嚱鏁拌皟鐢ㄦ瀯閫犲嚱鏁扮殑闂http://www.shnenglu.com/wolf/articles/63490.html鑰佺嫾鑰佺嫾Wed, 08 Oct 2008 10:51:00 GMThttp://www.shnenglu.com/wolf/articles/63490.htmlhttp://www.shnenglu.com/wolf/comments/63490.htmlhttp://www.shnenglu.com/wolf/articles/63490.html#Feedback0http://www.shnenglu.com/wolf/comments/commentRss/63490.htmlhttp://www.shnenglu.com/wolf/services/trackbacks/63490.html
 1 #include <iostream>                       
 2 
 3 using namespace std;
 4 
 5 class Test
 6 {
 7   public:
 8     int _mX;
 9     int _mY;
10 
11     Test(int n) 
12     {
13       _mX = n;
14       cout << this << endl;
15     }
16 
17     Test()
18     {
19       cout << this << endl;
20       Test(0);
21     }
22 };
23 
24 int main()
25 {
26   Test test;
27 
28   return 0;
29 }

    鎵ц涓涓嬭繖孌典唬鐮侊紝鎵撳嵃鍑轟簡涓や釜涓嶅悓鐨勫璞″湴鍧錛屽洜涓轟笉甯﹀弬鏁扮殑鏋勯犲嚱鏁板疄鐜伴噷鍘昏皟鐢ㄥ甫鍙傛暟鐨勬瀯閫犲嚱鏁版椂錛屽茍娌℃湁瀹屾垚瀵硅薄鍐呴儴鐨勫嚱鏁拌皟鐢紝鑰屾槸浼樺厛閫夋嫨浜嗛氳繃甯﹀弬鏁版瀯閫犲嚱鏁板張鏋勯犲嚭浜嗕竴涓柊鐨勫璞°?/div>
鎵浠ュ湪瀹為檯搴旂敤涓紝鎴戜滑搴旇錛?/div>
1. 鎴戜滑瑕佸敖閲忛伩鍏嶆瀯閫犲嚱鏁伴棿鐨勮皟鐢紱
2. 鏈変漢涔?fàn)鎯湪榛樿鏋勯犻噷瀵規(guī)垚鍛樿繘琛屽垵濮嬪寲錛屽甫鍙傛瀯閫犻噷榪涜璧嬪兼垨鏇翠負澶嶆潅鐨勫鐞嗭紝浣嗗疄闄呭悇涓瀯閫犲嚱鏁扮殑鍏崇郴搴旇騫跺垪錛屾垜浠簲璇ュ湪姣忎釜鏋勯犲嚱鏁伴噷閮藉仛鎴愬憳鍒濆鍖栫殑鎿嶄綔錛屾垨鑰呮妸鎴愬憳鍒濆鍖栧拰姣忎釜鏋勯犲嚱鏁拌榪涜鐨勫悓鏍風(fēng)殑鎿嶄綔灝佽涓轟竴涓被鐨勭鏈夋垚鍛樺嚱鏁幫紝鍦ㄦ瘡涓瀯閫犲嚱鏁伴噷璋冪敤璇ユ垚鍛樺嚱鏁幫紱
3. 濡傛灉瀹炲湪閬垮厤涓嶄簡鏋勯犲嚱鏁頒箣闂寸殑璋冪敤錛岄偅灝卞彧鑳界敤蹇呮潃浜嗭紝閲囩敤new鐨勬柟寮忥紝鍗充笂闈㈢殑浠g爜20琛屾敼涓?span style="FONT-SIZE: 13px; COLOR: rgb(57,57,57); LINE-HEIGHT: 21px; FONT-FAMILY: verdana">new (this)Test(0)錛屼嬌鏋勯犲嚱鏁板湪宸茬粡鍒嗛厤濂界殑鍐呭瓨涓婃墽琛岋紝鑰屼笉鏄噸鏂板垎閰嶆柊鐨勫唴瀛?span style="FONT-SIZE: 13px; COLOR: rgb(0,0,0)">;



鑰佺嫾 2008-10-08 18:51 鍙戣〃璇勮
]]> 亚洲国产日韩综合久久精品| 九九久久精品国产| 国产精品毛片久久久久久久| 久久综合九色综合精品| 国产精品欧美久久久久无广告 | 国产激情久久久久影院老熟女| 91精品无码久久久久久五月天| 久久久久亚洲av毛片大| 18禁黄久久久AAA片| 99久久久精品免费观看国产| 99久久综合国产精品二区| 欧美亚洲另类久久综合婷婷| 亚洲精品无码久久久久| 久久亚洲国产午夜精品理论片| 欧美粉嫩小泬久久久久久久| 亚洲国产精品无码久久一线| 日韩欧美亚洲综合久久影院d3| 欧美亚洲国产精品久久久久| 国产精品美女久久久m| 亚洲国产精品嫩草影院久久| 久久精品国产亚洲AV嫖农村妇女| 久久99精品久久久久久齐齐 | 欧美午夜精品久久久久久浪潮| 无遮挡粉嫩小泬久久久久久久| 久久99久久无码毛片一区二区| 久久久久久精品久久久久| 久久九九青青国产精品| 久久人做人爽一区二区三区| 99国内精品久久久久久久| 久久国产AVJUST麻豆| 国产成人综合久久久久久| 色妞色综合久久夜夜| 久久一区二区免费播放| 欧美精品一本久久男人的天堂 | 国产亚洲成人久久| 久久国产精品无码一区二区三区| 欧美麻豆久久久久久中文| 国内精品久久九九国产精品| 欧美亚洲国产精品久久高清 | 欧美大战日韩91综合一区婷婷久久青草| 久久精品国产久精国产思思|