锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲无限乱码一二三四麻,欧美在线一级视频,国产婷婷色一区二区三区在线http://m.shnenglu.com/smallfa/hazh-cnSun, 26 Oct 2025 22:32:34 GMTSun, 26 Oct 2025 22:32:34 GMT60Native C++ For WM緋誨垪http://m.shnenglu.com/smallfa/archive/2010/09/26/127756.htmlhenry08henry08Sun, 26 Sep 2010 07:01:00 GMThttp://m.shnenglu.com/smallfa/archive/2010/09/26/127756.htmlhttp://m.shnenglu.com/smallfa/comments/127756.htmlhttp://m.shnenglu.com/smallfa/archive/2010/09/26/127756.html#Feedback0http://m.shnenglu.com/smallfa/comments/commentRss/127756.htmlhttp://m.shnenglu.com/smallfa/services/trackbacks/127756.html

henry08 2010-09-26 15:01 鍙戣〃璇勮
]]>
鍗佸勾MFC緇忓巻璁よ瘑鐨凪icrosoft鎶鏈?/title><link>http://m.shnenglu.com/smallfa/archive/2010/09/26/127745.html</link><dc:creator>henry08</dc:creator><author>henry08</author><pubDate>Sun, 26 Sep 2010 05:39:00 GMT</pubDate><guid>http://m.shnenglu.com/smallfa/archive/2010/09/26/127745.html</guid><wfw:comment>http://m.shnenglu.com/smallfa/comments/127745.html</wfw:comment><comments>http://m.shnenglu.com/smallfa/archive/2010/09/26/127745.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/smallfa/comments/commentRss/127745.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/smallfa/services/trackbacks/127745.html</trackback:ping><description><![CDATA[鍗佸勾MFC緇忓巻璁よ瘑鐨凪icrosoft鎶鏈?img src ="http://m.shnenglu.com/smallfa/aggbug/127745.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/smallfa/" target="_blank">henry08</a> 2010-09-26 13:39 <a href="http://m.shnenglu.com/smallfa/archive/2010/09/26/127745.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鎺т歡浣跨敤http://m.shnenglu.com/smallfa/archive/2010/05/28/116611.htmlhenry08henry08Fri, 28 May 2010 06:59:00 GMThttp://m.shnenglu.com/smallfa/archive/2010/05/28/116611.htmlhttp://m.shnenglu.com/smallfa/comments/116611.htmlhttp://m.shnenglu.com/smallfa/archive/2010/05/28/116611.html#Feedback0http://m.shnenglu.com/smallfa/comments/commentRss/116611.htmlhttp://m.shnenglu.com/smallfa/services/trackbacks/116611.html   
    const char* str =  "ss" ;
    this->SetDlgItemTextW(IDC_MyLable, (LPCTSTR)str);


henry08 2010-05-28 14:59 鍙戣〃璇勮
]]>
C璇█銆丆++銆乂C鐢?shù)瀛愯祫鏂?鐢?shù)瀛愪?瑙嗛)涓嬭澆姹囨?http://m.shnenglu.com/smallfa/archive/2010/05/19/115779.htmlhenry08henry08Wed, 19 May 2010 01:36:00 GMThttp://m.shnenglu.com/smallfa/archive/2010/05/19/115779.htmlhttp://m.shnenglu.com/smallfa/comments/115779.htmlhttp://m.shnenglu.com/smallfa/archive/2010/05/19/115779.html#Feedback0http://m.shnenglu.com/smallfa/comments/commentRss/115779.htmlhttp://m.shnenglu.com/smallfa/services/trackbacks/115779.htmlC璇█銆丆++銆乂C鐢?shù)瀛愯祫鏂?鐢?shù)瀛愪?瑙嗛)涓嬭澆姹囨?/h2>
Visual C++ 6.0/Visual Studio 6.0涓嬭澆錛?/font>
Visual C++ 6.0 綆浣撲腑鏂囦紒涓氱増 闆嗘垚SP6瀹岀編鐗?/font>
Visual C++ 6.0 鑻辨枃浼佷笟鐗?闆嗘垚SP6瀹岀編鐗?/font>
Visual Studio 6.0 鑻辨枃浼佷笟鐗?闆嗘垚SP6瀹岀編鐗?/font>
C璇█:
璋旦寮篊璇█鏁欑▼鍏ㄤ功 Word鐗?/font>
C璇█瓚e懗紼嬪簭鐧句緥綺捐В
Sams鍑虹増 Advanced C 楂樼駭C璇█寮鍙?
C鏁板肩畻娉曠▼搴忓ぇ鍏?
C璇█涓撳緙栫▼
C璇█紼嬪簭璁捐妗堜緥綺劇紪
C璇█榪涢樁
C Primer Plus [SAMS]
C Pocket Reference [O'Reilly]
Practical C Programming
The C Programming Language
 
鍚夋灄澶уC璇█瑙嗛鏁欑▼ 鍏?1闆?CSF鏍煎紡
C璇█鍩虹瑙嗛鏁欑▼ 鍏?4璁?瀹屾暣涓婃灦
C璇█紼嬪簭璁捐瑙嗛鏁欑▼ 鏇炬℃暀鎺堣瑙?鍏?8璁插畬鏁寸増涓嬭澆
鏁版嵁緇撴瀯瑙嗛鏁欑▼ 娓呭崕澶у涓ヨ敋鏁忎富璁?鍏?8璁?瀹屾暣鐗?ASF鏍煎紡

鏁版嵁緇撴瀯C璇█鐗堣棰戞暀紼?鍏?2璁插畬鏁寸増
C++:
閽辮兘 c++紼嬪簭璁捐鏁欑▼ 絎簩鐗?楂樻竻PDF鐗?/font>

Essential C++ 涓枃鐗?鑻辨枃鐗?渚嵎璇?
緙栫▼鐐歸噾涔媀isual C++(鐢?shù)瀛愭暀绋? iso
C++紼嬪簭璋冭瘯瀹炵敤鎵嬪唽
C++闈㈠悜瀵硅薄澶氱嚎紼嬬紪紼?/font>
C++楂樼駭緙栫▼鍙傝冩墜鍐?/font>
C++ Primer 絎笁鐗?/font>
C++ Primer 絎洓鐗?涓枃鐗堥珮娓呮櫚
C鍜孋++浠g爜綺劇補
C++娌夋濆綍
 
楂樿川閲廋++緙栫▼鎸囧崡
C++ 緙栫▼鎬濇兂 絎?鍗?鏍囧噯C++瀵煎紩
C++ 緙栫▼鎬濇兂 絎?鍗?瀹炵敤緙栫▼鎶鏈?/font>
 
More Effective C++ 綆浣撲腑鏂囩増
C++ Templates 涓枃鐗?鑻辨枃鐗?/font>
C++ Coding Standards[Addison Wesley]
Absolute C++ 鍏ㄥ僵欏典唬鐮佸墫鏋?/font>
Accelerated C++ - Practical Programming by Example
 
Inside the C++ Object Model
More Exceptional C++ [Addison Wesley]
Exceptional C++ [Addison Wesley]
Sams鍑虹増 C++ Unleashed
C++ GUI Programming with QT4
VC++娣卞叆璇﹁В 瀛欓懌浣滃搧緋誨垪 楂樻竻PDF鐗堜笅杞?/font>
Visual C++ 6鍌?cè)潛滀?蹇熷弬鑰?
Visual C++ 6.0 緙栫▼瀹炰緥涓庢妧宸?PDF涓枃鐗?
Visual C++ 21澶╄嚜瀛︽暀紼?
璺熸垜瀛isual C++ 6
Visual C++ 6 鏁版嵁搴撶紪紼?21澶╄嚜瀛︽暀紼?CHM
The C++ Programming Language 絎笁鐗?
娣卞害鎺㈢儲C++瀵硅薄妯″瀷
Special Edition Using Visual C++ 6
Professional MFC with VC 6
Practical C++ Programming
Cross-Platform Development in C++
Iterative UML Development Using VC++ 6
Ace Programmer's Guide
Visual C++楂樼駭鐣岄潰鐗規(guī)晥鍒朵綔鐧句緥
綺鵑欸DI+緙栫▼ 娓呭崕澶у鍑虹増
Borland C++ Builder 6 寮鍙戞寚鍗?CHM
瀛欓懌C++瑙嗛鏁欑▼ rmvb鏍煎紡 鍏?0CD瀹屾暣鐗?/font>
C++紼嬪簭璁捐瑙嗛鏁欑▼ 涓滃崡澶у浣曟磥鏈堜富璁?鍏?0璁?涓? 48璁?/font>
C++紼嬪簭璁捐瑙嗛鏁欑▼ 涓滃崡澶у浣曟磥鏈堜富璁?鍏?0璁?涓? 32璁?/font>
C++瑙嗛鏁欑▼ 杈圭敤杈瑰Visual C++ 6 (ASF鏍煎紡)
涓北澶у钄″煿鍏?C++璇█瑙嗛鏁欑▼ 鍏?1璁?綺懼搧鎺ㄨ崘


henry08 2010-05-19 09:36 鍙戣〃璇勮
]]>
瀛欓懌videohttp://m.shnenglu.com/smallfa/archive/2010/05/19/115775.htmlhenry08henry08Wed, 19 May 2010 01:16:00 GMThttp://m.shnenglu.com/smallfa/archive/2010/05/19/115775.htmlhttp://m.shnenglu.com/smallfa/comments/115775.htmlhttp://m.shnenglu.com/smallfa/archive/2010/05/19/115775.html#Feedback0http://m.shnenglu.com/smallfa/comments/commentRss/115775.htmlhttp://m.shnenglu.com/smallfa/services/trackbacks/115775.html

henry08 2010-05-19 09:16 鍙戣〃璇勮
]]>
VC綺懼崕鏁欑▼:MFC鍏ラ棬緋誨垪http://m.shnenglu.com/smallfa/archive/2010/02/26/108497.htmlhenry08henry08Fri, 26 Feb 2010 08:08:00 GMThttp://m.shnenglu.com/smallfa/archive/2010/02/26/108497.htmlhttp://m.shnenglu.com/smallfa/comments/108497.htmlhttp://m.shnenglu.com/smallfa/archive/2010/02/26/108497.html#Feedback1http://m.shnenglu.com/smallfa/comments/commentRss/108497.htmlhttp://m.shnenglu.com/smallfa/services/trackbacks/108497.htmlVC綺懼崕鏁欑▼:MFC鍏ラ棬緋誨垪(涓)

henry08 2010-02-26 16:08 鍙戣〃璇勮
]]>
vc.net涓?瀛愮獥浣撳浣曡皟鐢ㄧ埗紿椾綋涓殑鎺т歡 http://m.shnenglu.com/smallfa/archive/2010/01/27/106544.htmlhenry08henry08Wed, 27 Jan 2010 09:15:00 GMThttp://m.shnenglu.com/smallfa/archive/2010/01/27/106544.htmlhttp://m.shnenglu.com/smallfa/comments/106544.htmlhttp://m.shnenglu.com/smallfa/archive/2010/01/27/106544.html#Feedback0http://m.shnenglu.com/smallfa/comments/commentRss/106544.htmlhttp://m.shnenglu.com/smallfa/services/trackbacks/106544.html濡?
鎴戞湁涓狟utton1銆丅utton2鍦‵rom1涓紝鍙﹀鏈変釜Button3鍦‵orm2涓?
鐜板湪鎴戝湪button1_Click涓姞鍏orm2^ Form2Dlg=gcnew Form2(); Form2Dlg->ShowDialog(this);
鐜板湪鎴戞兂鏄劇ずForm2鍚庢垜鎸塀utton3鍚庤兘鍝嶅簲Button2鐨凜lick浜嬩歡鎬庝箞鎼炰簡錛?img src ="http://m.shnenglu.com/smallfa/aggbug/106544.html" width = "1" height = "1" />

henry08 2010-01-27 17:15 鍙戣〃璇勮
]]>
浠嶫ava鍒癈++ 鈥?瀵規(guī)瘮Java涓嶤++緙栫▼鐨勪笉鍚?/title><link>http://m.shnenglu.com/smallfa/archive/2008/12/09/68932.html</link><dc:creator>henry08</dc:creator><author>henry08</author><pubDate>Tue, 09 Dec 2008 05:43:00 GMT</pubDate><guid>http://m.shnenglu.com/smallfa/archive/2008/12/09/68932.html</guid><wfw:comment>http://m.shnenglu.com/smallfa/comments/68932.html</wfw:comment><comments>http://m.shnenglu.com/smallfa/archive/2008/12/09/68932.html#Feedback</comments><slash:comments>32</slash:comments><wfw:commentRss>http://m.shnenglu.com/smallfa/comments/commentRss/68932.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/smallfa/services/trackbacks/68932.html</trackback:ping><description><![CDATA[<h2>1. 鏁版嵁綾誨瀷鍜屽彉閲?/h2> <p>C++ 涓殑鍙橀噺綾誨瀷涓嶫ava寰堢浉浼箋傚儚Java涓鏍鳳紝C++ 鏈?tt>int</tt> 鍜?<tt>double</tt> 綾誨瀷銆備絾鏄繖浜涙暟瀛楃被鍨嬬殑鍙栧艱寖鍥存槸渚濊禆浜庢満鍣ㄧ殑銆傛瘮濡傚湪16浣嶇郴緇熶笂錛屼緥濡傝繍琛孌OS 鎴朩indows 3.x鐨凱C鏈轟笂錛?tt>int</tt> 鏄弻瀛楄妭(2-byte)鐨勶紝鍙栧艱寖鍥存瘮Java鐨?-byte鐨?tt>int</tt> 瑕佸皬寰堝銆傚湪榪欎簺鏈哄櫒涓婏紝濡傛灉 int 涓嶅鐢ㄧ殑璇濓紝浣犻渶瑕佷嬌鐢ㄩ暱鏁村瀷long銆?/p> <p>C++ 鏈?<tt>short</tt> 鍜?<tt>unsigned</tt> 綾誨瀷鏉ユ洿鏈夋晥鐨勫瓨鍌ㄦ暟瀛椼傦紙鎴戣涓烘墍璋撴湁鏁堟槸鎸囨洿楂樼殑絀洪棿鍒╃敤鐜囥傦級 鏈濂芥槸灝介噺閬垮厤浣跨敤榪欎簺綾誨瀷闄ら潪鏄┖闂村埄鐢ㄧ殑鏈夋晥鎬у浣犵殑緋葷粺鐪熺殑闈炲父閲嶈銆?/p> <p>鍦–++涓竷?yōu)當(dāng)鍨嬬?<tt>bool</tt> 琛ㄧず錛岃屼笉鍍忓湪Java涓敤boolean銆?/p> <p>C++ 涓瓧絎︿覆綾誨瀷鐢?<tt>string</tt> 琛ㄧず銆傚畠涓嶫ava涓殑 <tt>String</tt> 綾誨瀷闈炲父鐩鎬技錛屼絾鏄紝榪樻槸瑕侀愪竴浠ヤ笅鍑犵偣涓嶅悓涔嬪錛?/p> <p>1. C++ 瀛楃涓插瓨鍌ˋSCII 鐮佸瓧絎︼紝鑰屼笉鏄爣鍑嗙爜Unicode 瀛楃</p> <p>2. C++ 瀛楃涓叉槸鍙互琚慨鏀圭殑錛岃孞ava瀛楃涓茬殑鍐呭鏄笉鍙慨鏀圭殑(immutable)銆?/p> <p>3. 鍙栧瓙瀛楃涓茬殑鎿嶄綔鍦?C++ 涓彨鍋?<tt>substr</tt>錛岃繖涓懡浠?tt>s.substr(i, n)</tt> 浠庡瓧絎︿覆s涓彇寰椾粠浣嶇疆 i 寮濮嬮暱搴︿負(fù)n鐨勫瓙瀛楃涓層?/p> <p>4. 鍦–++涓紝浣犲彧鑳藉灝嗗瓧絎︿覆涓庡叾瀹冨瓧絎︿覆瀵硅薄鐩鎬覆鑱?concatenate)錛岃屼笉鑳藉涓庝換鎰忕殑瀵硅薄鐩鎬覆鑱斻?/p> <p>5. C++涓彲浠ョ洿鎺ヤ嬌鐢ㄥ叧緋繪搷浣滅 <tt>==銆?!=銆?<銆?<=銆?>銆?>= </tt>鏉ヨ繘琛屽瓧絎︿覆姣旇緝錛屽叾涓悗闈㈠洓涓搷浣滅鏄寜瀛楁瘝欏哄簭榪涜姣旇緝鐨勩?榪欐瘮Java涓嬌鐢ㄥ嚱鏁癳quals鍜宑ompareTo鏉ユ瘮杈冭鏂逛究寰堝銆?/p> <br><br> <h2>2. 鍙橀噺鍜屽父閲?/h2> <p>鍦–++涓紝鏈湴鍙橀噺鐨勫畾涔夌湅璧鋒潵涓嶫ava涓浉鍚岋紝渚嬪錛?/p> <p><tt>int n = 5;</tt></p> <p>瀹為檯涓婅繖姝f槸C++鍜孞ava鐨勪竴涓噸瑕佷笉鍚屼箣澶勩侰++緙栬瘧鍣ㄤ笉瀵規(guī)湰鍦板彉閲忚繘琛屽垵濮嬪寲媯楠岋紝鎵浠ュ湪C++涓緢瀹規(guī)槗蹇樿鍒濆鍖栦竴涓彉閲忥紝榪欑鎯呭喌涓嬶紝鍙橀噺鐨勫艱鍙橀噺鎵鍗犲唴瀛樺尯鍩熶腑鍒氬ソ褰撳墠瀛樺湪闅忔満鍊箋傝繖鏄劇劧鏄緢瀹規(guī)槗浜х敓紼嬪簭鍑洪敊鐨勫湴鏂廣?/p> <p>涓嶫ava涓鏍鳳紝 C++涓被鍙互鏈夋暟鎹煙鍜岄潤鎬佸彉閲忋備笉鍚岀殑鏄紝C++涓彉閲忓彲浠ュ湪鍑芥暟鐢氳嚦鏄被鐨勫闈㈠畾涔夛紝榪欎簺鎵璋撶殑鍏ㄥ眬鍙橀噺鍙互鍦ㄧ▼搴忕殑浠諱綍鍑芥暟涓璁塊棶錛屽洜鑰屼笉鏄撹寰堝ソ鐨勭鐞嗐傛墍C++涓簲璇ュ敖閲忛伩鍏嶄嬌鐢ㄥ叏灞鍙橀噺銆?/p> <p>鍦–++涓紝甯擱噺鍙互鍦ㄤ換浣曞湴鏂硅瀹氫箟錛堣寰楀湪Java涓紝甯擱噺蹇呴』鏄被鐨勯潤鎬佹暟鎹畇tatic data)銆?C++ 浣跨敤鍏抽敭瀛?<tt>const</tt> 鏉ュ畾涔夊父閲忥紝鑰孞ava涓槸 <tt>final</tt>銆備緥濡傦細(xì)</p> <p><tt>const int DAYS_PER_YEAR = 365;</tt></p> <br><br><br> <h2>3. 綾?/h2> <p>C++ 涓綾葷殑瀹氫箟涓嶫ava鏈変簺涓嶅悓錛岃繖閲屾槸涓涓緥瀛愶細(xì)涓涓狢++ 鐗堟湰鐨?<tt>Point</tt> 綾?</p> <p><tt>class Point /* C++ */</tt></p> <p><tt>{</tt></p> <p><tt>public:</tt></p> <p><tt>Point();</tt></p> <p><tt>Point(double xval, double yval);</tt></p> <p><tt>void move(double dx, double dy);</tt></p> <p><tt>double getX() const;</tt></p> <p><tt>double getY() const;</tt></p> <p><tt>private:</tt></p> <p><tt>double x;</tt></p> <p><tt>double y;</tt></p> <p><tt>};</tt></p> <p>榪欓噷鍑犵偣閲嶈鐨勪笉鍚屾槸錛?/p> <p>1. C++鐨勭被瀹氫箟涓垎涓哄叕鍏卞拰縐佹湁閮ㄥ垎錛屽垎鍒互鍏抽敭瀛?<tt>public</tt> 鍜?<tt>private</tt>寮濮嬨傝屽湪Java涓紝姣忎竴涓厓绱犻兘蹇呴』鏍囨槑 <tt>public</tt> 鎴?<tt>private</tt>銆?/p> <p>2. C++涓被鐨勫畾涔夊彧鍖呭惈鍑芥暟鐨勫0鏄庯紝鐪熸鐨勫疄鐜板彟澶栧崟鐙垪鍑恒?/p> <p>3. 璁塊棶鍑芥暟(accessor methods)鏍囨湁鍏抽敭瀛?<tt>const</tt> 錛岃〃鏄庤繖涓嚱鏁頒笉浼?xì)鏀瑰彉鏈璞$殑鍏冪礌鍊箋?/p> <p>4. 綾誨畾涔夌殑緇撳熬澶勬湁鍒嗗彿</p> <p>綾諱腑鍑芥暟鐨勫疄鐜拌窡鍦ㄧ被鐨勫畾涔変箣鍚庛傚洜涓哄嚱鏁版槸鍦ㄧ被澶栭潰瀹氫箟鐨勶紝鎵浠ユ瘡涓涓嚱鏁扮殑鍚嶅瓧鍓嶉潰瑕佸姞綾誨悕縐頒綔涓哄墠緙錛屽茍浣跨敤鎿嶄綔絎﹀弻鍐掑彿::鏉ュ垎鍓茬被鐨勫悕縐板拰鍑芥暟鐨勫悕縐般備笉鏀瑰彉闅愬惈鍙傛暟鍊鹼紙鍗沖綋鍓嶅璞$殑鍊鹼級鐨勮闂嚱鏁扮敤 <tt>const</tt>鏍囨槑銆傚涓嬫墍紺烘槸涓婇潰綾誨畾涔変腑鐨勫嚱鏁扮殑瀹炵幇錛?/p> <p><tt>Point::Point() { x = 0; y = 0; }</tt></p> <p><tt>void Point::move(double dx, double dy) </tt></p> <p><tt>{</tt></p> <p><tt>x = x + dx;</tt></p> <p><tt>y = y + dy;</tt></p> <p><tt>}</tt></p> <p><tt>double Point::getX() const</tt></p> <p><tt>{ </tt></p> <p><tt>return x;</tt></p> <p><tt>}</tt></p> <br><br><br> <h2>4. 瀵硅薄</h2> <p>Java 涓?C++ 鏈涓昏鐨勪笉鍚屽湪浜庡璞″彉閲忕殑浣跨敤銆傚湪 C++涓紝瀵硅薄鍙橀噺瀛樺偍鐨勬槸鐪熸鐨勫璞$殑鍊鹼紝鑰屼笉鏄璞″紩鐢?<a title=鍏充簬reference鐨勬枃绔?><u><font color=#810081>reference</font></u></a>)銆傛敞鎰忓湪C++涓瀯閫犱竴涓璞$殑鏃跺欐槸涓嶄嬌鐢ㄥ叧閿瓧new鐨勶紝鍙渶瑕佸湪鍙橀噺鐨勫悕瀛楀悗闈㈢洿鎺ヨ祴浜堟瀯閫犲嚱鏁扮殑鍙傛暟灝卞彲浠ヤ簡錛屼緥濡傦細(xì)</p> <p><tt>Point p(1, 2); /* 鏋勯犲璞?p */</tt></p> <p>濡傛灉涓嶈窡鍙傛暟璧嬪鹼紝鍒欎嬌鐢ㄩ粯璁ゆ瀯閫犲嚱鏁幫紝渚嬪錛?/p> <p><tt>Time now; /* 榛樿浣跨敤鏋勯犲嚱鏁?Time::Time() */</tt></p> <p>榪欎竴鐐逛笌Java寰堜笉鍚屻傚湪Java涓紝榪欎釜鍛戒護(hù)浠呬粎鐢熸垚涓涓病鏈夊垵濮嬪寲鐨剅eference錛岃屽湪C++涓紝瀹冪敓鎴愪竴涓疄闄呯殑瀵硅薄銆?/p> <p>褰撲竴涓璞¤璧嬬粰鍙︿竴涓璞″彉閲忕殑鏃跺欙紝瀹為檯鐨勫煎皢琚嫹璐濄傝屽湪Java涓紝鎷瘋礉涓涓璞″彉閲忓彧涓嶈繃鏄緩绔嬩簡鍙﹀涓涓寚鍚戝璞$殑reference銆傛嫹璐濅竴涓狢++鐨勫璞″氨鍍忓湪Java涓皟鐢╟lone榪欎釜鍑芥暟涓鏍鳳紝鑰屼慨鏀規(guī)嫹璐濈殑鍊間笉浼?xì)鏀瑰彉鍘熷璞$殑鍊箋備緥濡傦細(xì)</p> <p><tt>Point q = p; /* 鎷瘋礉p鍒皅 */</tt></p> <p><tt>q.move(1, 1); /* 縐誨姩q鑰宲涓嶅姩錛屽嵆q鐨勫煎彉浜嗭紝鑰宲鐨勪笉鍙?/</tt></p> <p>澶氭暟鎯呭喌涓嬶紝C++涓繖縐嶅璞$洿鎺ュ鍊兼搷浣滅殑鐗規(guī)т嬌鐢ㄨ搗鏉ュ緢鏂逛究錛屼絾鏄篃鏈変簺鏃跺欎笉灝藉浜烘剰錛?/p> <p>1. 褰撻渶瑕佷竴涓嚱鏁頒腑淇敼涓涓璞$殑鍊鹼紝蹇呴』璁頒綇瑕佷嬌鐢ㄦ寜寮曠敤璋冪敤call by reference (鍙傝涓嬮潰鍑芥暟閮ㄥ垎)</p> <p>2. 涓や釜瀵硅薄鍙橀噺涓嶈兘鎸囧悜鍚屼竴涓璞″疄浣撱傚鏋滀綘瑕佸湪C++涓疄鐜拌繖縐嶆晥鏋滐紝蹇呴』浣跨敤鎸囬拡pointer錛堝弬瑙佷笅闈㈡寚閽堥儴鍒嗭級</p> <p>3. 涓涓璞″彉閲忓彧鑳藉瓨鍌ㄤ竴縐嶇壒瀹氱殑綾誨瀷鐨勫鹼紝濡傛灉浣犳兂瑕佷嬌鐢ㄤ竴涓彉閲忔潵瀛樺偍涓嶅悓瀛愮被鐨勫璞$殑鍊鹼紙澶氭乸loymorphism)錛屽垯闇瑕佷嬌鐢ㄦ寚閽堛?/p> <p>4. 濡傛灉浣犳兂鍦–++涓嬌鐢ㄤ竴涓彉閲忔潵鎴栬呮寚鍚憂ull鎴栬呮寚鍚戜竴涓疄闄呯殑瀵硅薄錛屽垯闇瑕佷嬌鐢ㄦ寚閽?/p> <br><br><br><br><br> <h2>5. 鍑芥暟</h2> <p>鍦↗ava涓紝姣忎竴涓嚱鏁板繀欏繪垨鑰呮槸瀵硅薄鍑芥暟(instance method)錛屾垨鑰呮槸闈欐佸嚱鏁?static function)鎴栫О綾誨嚱鏁般侰++鍚屾牱鏀寔瀵硅薄鍑芥暟鍜岄潤鎬佸嚱鏁幫紙綾誨嚱鏁幫級錛屼絾鍚屾椂C++涔熷厑璁稿畾涔変笉灞炰簬浠諱綍綾葷殑鍑芥暟錛岃繖浜涘嚱鏁板彨鍋氬叏灞鍑芥暟<em>錛坓lobal functions錛?/em>銆?/p> <p>鐗瑰埆鐨勬槸錛屾瘡涓涓狢++ 紼嬪簭閮戒粠涓涓彨鍋?<tt>main</tt>鐨勫叏灞鍑芥暟寮濮嬫墽琛岋細(xì)</p> <p><tt>int main()</tt></p> <p><tt>{ . . .</tt></p> <p><tt>}</tt></p> <p>榪樻湁鍙﹀涓涓牸寮忕殑main鍑芥暟鍙互鐢ㄦ潵鎹曟崏鍛戒護(hù)琛屽弬鏁幫紝綾諱技浜嶫ava鐨刴ain鍑芥暟錛屼絾鏄畠瑕佹眰鍏充簬C鏍煎紡鐨勬暟緇勫拰瀛楃涓茬殑鐭ヨ瘑錛岃繖閲屽氨涓嶄粙緇嶄簡銆?/p> <p>鎸夌収涔?fàn)鎯Q岄氬父濡傛灉紼嬪簭鎵ц鎴愬姛錛?<tt>main</tt> 鍑芥暟榪斿洖0錛屽惁鍒欒繑鍥為潪闆舵暣鏁般?/p> <p>鍚孞ava涓鏍鳳紝鍑芥暟鍙傛暟鏄氳繃鍊間紶閫掔殑(passed by value)銆傚湪Java涓紝鍑芥暟鏃犺濡備綍閮芥槸鍙互淇敼瀵硅薄鐨勫肩殑銆傜劧鑰屽湪C++涓紝鍥犱負(fù)瀵硅薄鐩存帴瀛樺偍鐨勬槸瀹為檯鐨勫鹼紝鑰屼笉鏄寚鍚戝肩殑reference錛屼篃灝辨槸璇翠紶鍏ュ嚱鏁扮殑鏄竴涓疄闄呭肩殑鎷瘋礉錛屽洜姝や篃灝辨棤娉曚慨鏀瑰師鏉ュ璞$殑鍊箋?/p> <p>鎵浠ワ紝C++ 鏈変袱縐嶅弬鏁頒紶閫掓満鍒訛紝鍚孞ava涓鏍風(fēng)殑鎸夊艱皟鐢?<em>call by value) </em>錛屼互鍙?qiáng)鎸夊湴鍧璋冪敤(<em>call by reference</em>)銆傚綋涓涓弬鏁版槸鎸塺eference浼犻掓椂錛屽嚱鏁板彲浠ヤ慨鏀瑰叾鍘熷鍊箋侰all by reference 鐨勫弬鏁板墠闈㈡湁涓涓湴鍧鍙?<tt>&</tt> 璺熷湪鍙傛暟綾誨瀷鐨勫悗闈紝渚嬪錛?/p> <p><tt>void raiseSalary(Employee& e, double by)</tt></p> <p><tt>{ . . .</tt></p> <p><tt>}</tt></p> <p>涓嬮潰鏄竴涓吀鍨嬬殑鍒╃敤call by reference鐨勫嚱鏁幫紝鍦↗ava涓槸鏃犳硶瀹炵幇榪欐牱鐨勫姛鑳界殑銆?/p> <p><tt>void swap(int& a, int& b)</tt></p> <p><tt>{ int temp = a;</tt></p> <p><tt>a = b;</tt></p> <p><tt>b = temp;</tt></p> <p><tt>}</tt></p> <p>濡傛灉浣跨敤 <tt>swap(x, y)</tt>鏉ヨ皟鐢ㄨ繖涓嚱鏁幫紝鍒檙eference鍙傛暟 <tt>a</tt> 鍜?<tt>b</tt> 鎸囧悜鍘熷疄闄呭弬鏁?tt>x</tt> 鍜?<tt>y</tt>鐨勪綅緗紝鑰屼笉鏄畠浠殑鍊肩殑鎷瘋礉錛屽洜姝よ繖涓嚱鏁板彲浠ュ疄鐜板疄闄呬氦鎹㈣繖涓や釜鍙傛暟鐨勫箋?/p> <p>鍦?C++涓紝姣忓綋闇瑕佸疄鐜頒慨鏀瑰師鍙傛暟鐨勫兼椂浣犲氨鍙互浣跨敤鎸夊湴鍧璋冪敤 call by reference </p> <br><br><br> <h2>6. 鍚戦噺Vector</h2> <p>C++ 鐨勫悜閲忕粨鏋勭粨鍚堜簡Java涓暟緇勫拰鍚戦噺涓よ呯殑浼樼偣銆備竴涓狢++ 鐨勫悜閲忓彲浠ユ柟渚跨殑琚闂紝鍏跺閲忓張鍙互鍔ㄦ佺殑澧為暱銆傚鏋?<tt>T</tt> 鏄換鎰忕被鍨嬶紝鍒?<tt>vector<T></tt> 鏄竴涓厓绱犱負(fù) <tt>T</tt> 綾誨瀷鐨勫姩鎬佹暟緇勩備笅闈㈢殑璇彞</p> <p><tt>vector<int> a;</tt></p> <p>浜х敓涓涓垵濮嬩負(fù)絀虹殑鍚戦噺銆傝岃鍙?/p> <p><tt>vector<int> a(100);</tt></p> <p>鐢熸垚涓涓垵濮嬫湁100涓厓绱犵殑鍚戦噺銆備綘鍙互浣跨敤<tt>push_back</tt> 鍑芥暟鏉ユ坊鍔犲厓绱狅細(xì)</p> <p><tt>a.push_back(n);</tt></p> <p>璋冪敤 <tt>a.pop_back()</tt> 浠?tt>a</tt>涓彇鍑烘渶鍚庝竴涓厓绱狅紙鎿嶄綔鍚庤繖涓厓绱犺浠巃涓垹鎺?錛?浣跨敤鍑芥暟<tt>size</tt> 鍙互寰楀埌褰撳墠a涓殑鍏冪礌涓暟銆?/p> <p>浣犺繕鍙互閫氳繃鎴戜滑鐔熸?zhèn)夌?<tt>[]</tt> 鎿嶄綔絎︽潵璁塊棶鍚戦噺涓厓绱狅紝渚嬪錛?/p> <p><tt>for (i = 0; i < a.size(); i++) {<br></tt></p> <p><tt>sum = sum + a[i];</tt></p> <p><tt>}</tt></p> <p>鍚孞ava涓竴鏍鳳紝鏁扮粍绱㈠紩蹇呴』涓?0 鍜?<tt>a.size() - 1</tt>涔嬮棿鐨勫箋備絾鏄笌Java涓嶅悓鐨勬槸錛孋++涓病鏈塺untime鐨勭儲寮曞彿鍚堟硶鎬ф楠屻傝瘯鍥捐闂潪娉曠殑绱㈠紩浣嶇疆鍙兘閫犳垚闈炲父涓ラ噸鐨勫嚭閿欍?/p> <p>灝卞儚鎵鏈夊叾瀹?C++ 瀵硅薄涓鏍鳳紝鍚戦噺涔熸槸鍊箋傚鏋滀綘灝嗕竴涓悜閲忚祴鍊肩粰鍙﹀涓涓悜閲忓彉閲忥紝鎵鏈夌殑鍏冪礌閮戒細(xì)琚嫹璐濊繃鍘匯?/p> <p><tt>vector<int> b = a; /* 鎵鏈夌殑鍏冪礌閮借鎷瘋礉浜?*/</tt></p> <p>瀵規(guī)瘮Java涓殑鎯呭喌錛屽湪Java涓紝涓涓暟緇勫彉閲忔槸涓涓寚鍚戞暟緇勭殑reference銆傛嫹璐濊繖涓彉閲忎粎浠呬駭鐢熷彟澶栦竴涓寚鍚戝悓涓鏁扮粍鐨剅eference錛岃屼笉浼?xì)鎷疯礉姣忎竴涓厓绱犵殑鍊箋?/p> <p>姝e洜濡傛錛屽鏋滀竴涓狢++鍑芥暟瑕佸疄鐜頒慨鏀瑰悜閲忕殑鍊鹼紝蹇呴』浣跨敤reference鍙傛暟錛?/p> <p><tt>void sort(vector<int>& a)</tt></p> <p><tt>{ . . .</tt></p> <p><tt>}</tt></p> <br><br><br> <h2>7. 杈撳叆鍜岃緭鍑?/h2> <p>鍦–++涓紝鏍囧噯鐨勮緭鍏ヨ緭鍑烘祦鐢ㄥ璞?<tt>cin</tt> 鍜?<tt>cout</tt> 琛ㄧず銆傛垜浠嬌鐢?<tt><<</tt> 鎿嶄綔絎﹀啓杈撳嚭錛屼緥濡傦細(xì)</p> <p><tt>cout << “Hello, World!”;</tt></p> <p>涔熷彲浠ヨ繛鐫杈撳嚭澶氶」鍐呭錛屼緥濡傦細(xì)</p> <p><tt>cout << “The answer is ” << x << “\n”;</tt></p> <p>鎴戜滑浣跨敤 <tt>>></tt> 鎿嶄綔絎︽潵璇誨叆涓涓暟瀛楁垨鍗曡瘝錛屼緥濡傦細(xì)</p> <p><tt>double x;</tt></p> <p><tt>cout << “Please enter x: “;</tt></p> <p><tt>cin >> x;</tt></p> <p><tt>string fname;</tt></p> <p><tt>cout << “Please enter your first name: “;</tt></p> <p><tt>cin >> fname;</tt></p> <p>鍑芥暟<tt>getline</tt> 鍙互璇誨叆鏁磋鐨勮緭鍏ワ紝渚嬪錛?/p> <p><tt>string inputLine;</tt></p> <p><tt>getline(cin, inputLine);</tt></p> <p>濡傛灉鍒拌揪杈撳叆鐨勭粨灝撅紝鎴栬呬竴涓暟瀛楁棤娉曡姝g‘鐨勮鍏ワ紝榪欎釜嫻佸璞′細(xì)琚緗負(fù) failed 鐘舵侊紝鎴戜滑鍙互浣跨敤鍑芥暟 <tt>fail</tt> 鏉ユ楠岃繖涓姸鎬侊紝渚嬪錛?/p> <p><tt>int n;</tt></p> <p><tt>cin >> n;</tt></p> <p><tt>if (cin.fail()) cout << “Bad input”;</tt></p> <p>涓鏃︿竴涓祦鐨勭姸鎬佽璁句負(fù)failed錛屾垜浠槸寰堥毦閲嶇疆瀹冪殑鐘舵佺殑錛屾墍浠ュ鏋滀綘鐨勭▼搴忛渶瑕佸鐞嗛敊璇緭鍏ョ殑鎯呭喌錛屽簲璇ヤ嬌鐢ㄥ嚱鏁?<tt>getline</tt> 鐒跺悗浜哄伐澶勭悊寰楀埌鐨勮緭鍏ユ暟鎹?/p> <p> </p> <p> </p> <br><br> <h2>8. 鎸囬拡pointer</h2> <p>鎴戜滑宸茬粡鐭ラ亾鍦–++涓紝瀵硅薄鍙橀噺鐩存帴瀛樺偍鐨勬槸瀵硅薄鐨勫箋傝繖鏄笌Java涓嶅悓鐨勶紝鍦↗ava涓璞″彉閲忓瓨鍌ㄧ殑鏄竴涓湴鍧錛岃鍦板潃鎸囧悜瀵硅薄鍊煎疄闄呭瓨鍌ㄧ殑鍦版柟銆傛湁鏃跺湪C++涓篃闇瑕佸疄鐜拌繖鏍風(fēng)殑甯冪疆錛岃繖灝辯敤鍒頒簡鎸囬拡pointer銆傚湪 C++涓紝涓涓寚鍚戝璞$殑鍙橀噺鍙仛鎸囬拡銆傚鏋淭鏄竴縐嶆暟鎹被鍨嬶紝鍒?<tt>T*</tt> 鏄寚鍚戣繖縐嶆暟鎹被鍨嬬殑鎸囬拡銆?/p> <p>灝卞儚 Java涓竴鏍鳳紝涓涓寚閽堝彉閲忓彲浠ヨ鍒濆鍖栦負(fù)絀哄?<tt>NULL</tt>錛屽彟澶栦竴涓寚閽堝彉閲忕殑鍊鹼紝鎴栬呬竴涓皟鐢╪ew鐢熸垚鐨勬柊瀵硅薄錛?/p> <p><tt>Employee* p = NULL;</tt></p> <p><tt>Employee* q = new Employee(”Hacker, Harry”, 35000);</tt></p> <p><tt>Employee* r = q;</tt></p> <p>瀹為檯涓婂湪C++涓繕鏈夌鍥涚鍙兘錛岄偅灝辨槸鎸囬拡鍙互琚垵濮嬪寲涓哄彟澶栦竴涓璞$殑鍦板潃錛岃繖闇瑕佷嬌鐢ㄥ湴鍧鎿嶄綔絎?<tt>&</tt> 錛?/p> <p><tt>Employee boss(”Morris, Melinda”, 83000);</tt></p> <p><tt>Employee* s = &boss;</tt></p> <p>榪欏疄闄呬笂騫朵笉鏄粈涔堝ソ涓繪剰銆備繚闄╃殑鍋氭硶榪樻槸搴旇鐩存帴璁╂寚閽堟寚鍚戜嬌鐢?<tt>new</tt>鐢熸垚鐨勬柊瀵硅薄銆?/p> <p>鍒扮洰鍓嶄負(fù)姝紝C++ 鎸囬拡鐪嬭搗鏉ラ潪甯稿儚 Java 鐨勫璞″彉閲忋傜劧鑰岋紝榪欓噷鏈変竴涓緢閲嶈鐨勮娉曠殑涓嶅悓銆傛垜浠繀欏諱嬌鐢ㄦ槦鍙鋒搷浣滅 <tt>*</tt> 鏉ヨ闂寚閽堟寚鍚戠殑瀵硅薄銆傚鏋?<tt>p</tt> 鏄竴涓寚鍚?tt>Employee</tt>瀵硅薄鐨勬寚閽堬紝鍒?<tt>*p</tt> 鎵嶄唬琛ㄤ簡榪欎釜瀵硅薄錛?/p> <p><tt>Employee* p = . . .;</tt></p> <p><tt>Employee boss = <strong>*p</strong>;</tt></p> <p>褰撴垜浠渶瑕佹墽琛屽璞$殑鍑芥暟鎴栬闂璞$殑涓涓暟鎹煙鏃訛紝涔熼渶瑕佷嬌鐢?<tt>*p</tt> 錛?/p> <p><tt>(*p).setSalary(91000);</tt></p> <p>*p澶栭潰鐨勬嫭鍙鋒槸蹇呴渶鐨勶紝鍥犱負(fù) <tt>.</tt> 鎿嶄綔絎︽瘮 * 鎿嶄綔絎︽湁鏇撮珮鐨勪紭鍏堢駭銆侰鐨勮璁¤呰寰楄繖縐嶅啓娉曞緢闅劇湅錛屾墍浠ヤ粬浠彁渚涗簡鍙﹀涓縐嶆浛浠g殑鍐欐硶錛屼嬌鐢?-> 鎿嶄綔絎︽潵瀹炵幇 <tt>*</tt> 鍜?<tt>.</tt> 鎿嶄綔絎︾殑緇勫悎鍔熻兘銆傝〃杈懼紡</p> <p><tt>p->setSalary(91000);</tt></p> <p>鍙互璋冪敤瀵硅薄*p鐨勫嚱鏁?<tt>setSalary</tt> 銆備綘鍙互綆鍗曠殑璁頒綇 <tt>.</tt> 鎿嶄綔絎︽槸鍦ㄥ璞′笂浣跨敤鐨勶紝-> 鎿嶄綔絎︽槸鍦ㄦ寚閽堜笂浣跨敤鐨勩?/p> <p>濡傛灉浣犱笉鍒濆鍖栦竴涓寚閽堬紝鎴栬呭鏋滀竴涓寚閽堜負(fù)絀哄?NULL 鎴栨寚鍚戠殑瀵硅薄涓嶅啀瀛樺湪錛屽垯鍦ㄥ畠涓婇潰浣跨敤 <tt>*</tt> 鎴?<tt>-></tt> 鎿嶄綔絎﹀氨浼?xì)鍑洪敊銆?涓嶅垢鐨勬槸 C++ runtime 緋葷粺騫朵笉媯鏌ヨ繖涓嚭閿欍傚鏋滀綘鑼冧簡榪欎釜閿欒錛屼綘鐨勭▼搴忓彲鑳戒細(xì)琛屼負(fù)鍙ゆ垨姝繪満銆?/p> <p>鑰屽湪Java涓紝榪欎簺閿欒鏄笉浼?xì)鍙戠敓鐨勩傛墍鏈夌殑reference閮藉繀欏誨垵濮嬪寲錛屾墍鏈夌殑瀵硅薄鍙浠嶆湁reference鎸囧悜瀹冨氨涓嶄細(xì)琚粠鍐呭瓨涓竻闄わ紝鍥犳浣犱篃涓嶄細(xì)鏈変竴涓寚鍚戝凡琚垹闄ょ殑瀵硅薄鐨剅eference銆侸ava鐨剅untime 緋葷粺浼?xì)妫鏌eference鏄惁涓虹┖錛屽茍鍦ㄩ亣鍒扮┖鎸囬拡鏃舵姏鍑轟竴涓猲ull pointer鐨勪緥澶?exception)銆?/p> <p>C++ 鍜?Java榪樻湁涓涓樉钁楃殑涓嶅悓錛屽氨鏄?Java 鏈?em>鍨冨溇鍥炴敹</em>鍔熻兘錛岃兘澶熻嚜鍔ㄥ洖鏀惰搴熷純鐨勫璞°傝屽湪C++涓紝闇瑕佺▼搴忓憳鑷繁綆$悊鍐呭瓨鍒嗛厤鍥炴敹銆?/p> <p>C++涓綋瀵硅薄鍙橀噺瓚呭嚭鑼冨洿鏃跺彲浠ヨ嚜鍔ㄨ鍥炴敹銆備絾鏄嬌鐢╪ew鐢熸垚鐨勫璞″繀欏葷敤delete鎿嶄綔絎︽墜鍔ㄥ垹闄わ紝渚嬪錛?/p> <p><tt>Employee* p = new Employee(”Hacker, Harry”, 38000);</tt></p> <p><tt>. . .</tt></p> <p><tt>delete p; /* 涓嶅湪闇瑕佽繖涓璞?*/</tt></p> <p>濡傛灉浣犲繕璁板垹闄や竴涓璞★紝閭d箞浣犵殑紼嬪簭鏈夊彲鑳芥渶緇堢敤鍏夋墍鏈夊唴瀛樸傝繖灝辨槸鎴戜滑甯歌鐨勫唴瀛樻硠婕?(<em>memory leak</em>)銆傛洿閲嶈鐨勬槸錛屽鏋滀綘濡傛灉鍒犻櫎浜嗕竴涓璞★紝鐒跺悗鍙堢戶緇嬌鐢ㄥ畠錛屼綘鍙兘瑕嗙洊涓嶅睘浜庝綘鐨勬暟鎹傚鏋滀綘鍒氬閥瑕嗙洊浜嗙敤浜庡鐞嗗唴瀛樺洖鏀剁殑鏁版嵁鍩燂紝閭d箞鍐呭瓨鍒嗛厤鏈哄埗灝卞彲鑳借繍杞け甯歌岄犳垚鏇翠弗閲嶇殑閿欒錛岃屼笖寰堥毦璇婃柇鍜屼慨澶嶃傚洜姝わ紝鍦–++涓渶濂藉敖閲忓皯鐢ㄦ寚閽?/p> <br><br><br> <h2>9. 緇ф壙</h2> <p>C++鍜孞ava涓戶鎵跨殑鍩烘湰璇硶鏄緢鐩鎬技鐨勩傚湪C++涓紝浣跨敤 <tt>: public</tt> 浠f浛Java涓殑<tt>extends</tt> 鏉ヨ〃紺虹戶鎵垮叧緋?銆?(C++ 涔熸敮鎸佺鏈夌戶鎵跨殑姒傚康錛屼絾鏄笉澶湁鐢ㄣ?</p> <p>榛樿鎯呭喌涓嬶紝C++涓殑鍑芥暟涓嶆槸鍔ㄦ佺粦瀹氱殑銆傚鏋滀綘闇瑕佹煇涓嚱鏁板疄鐜板姩鎬佺粦瀹氾紝闇瑕佷嬌鐢?tt>virtual</tt>澹版槑瀹冧負(fù)铏氬嚱鏁幫紝渚嬪錛?/p> <p><tt>class Manager : public Employee</tt></p> <p><tt>{ </tt></p> <p><tt>public:</tt></p> <p><tt>Manager(string name, double salary, string dept);</tt></p> <p><tt><strong>virtual</strong> void print() const;</tt></p> <p><tt>private:</tt></p> <p><tt>string department;</tt></p> <p><tt>};</tt></p> <p>鍚孞ava涓鏍鳳紝鏋勯犲嚱鏁頒腑璋冪敤鐖剁被鐨勬瀯閫犲嚱鏁版湁鐗規(guī)畩鐨勮娉曘?Java浣跨敤鍏抽敭瀛?<tt>super</tt>銆侰++涓繀欏誨湪瀛愮被鐨勬瀯閫犲嚱鏁頒綋澶栬皟鐢ㄧ埗綾葷殑鏋勯犲嚱鏁般備笅闈㈡槸涓涓緥瀛愶細(xì)</p> <p><tt>Manager::Manager(string name, double salary, string dept)</tt></p> <p><tt><strong>: Employee(name, salary) </strong>/* 璋冪敤鐖剁被鐨勬瀯閫犲嚱鏁?*/</tt></p> <p><tt>{ department = dept;</tt></p> <p><tt>}</tt></p> <p>Java 涓湪瀛愮被鍑芥暟涓皟鐢ㄧ埗綾葷殑鍑芥暟鏃朵篃浣跨敤鍏抽敭瀛?<tt>super</tt> 銆傝屽湪C++涓槸浣跨敤鐖剁被鐨勫悕縐板姞涓婃搷浣滅 <tt>::</tt>琛ㄧず錛屼緥濡傦細(xì)</p> <p><tt>void Manager::print() const</tt></p> <p><tt>{ <strong>Employee::print(); </strong>/* 璋冪敤鐖剁被鐨勫嚱鏁?*/</tt></p> <p><tt>cout << department << “\n”;</tt></p> <p><tt>}</tt></p> <p>涓涓?C++ 瀵硅薄鍙橀噺鍙兘瀛樺偍鐗瑰畾綾誨瀷鐨勫璞″箋傝鎯沖湪C++涓疄鐜板鎬?polymorphism)錛屽繀欏諱嬌鐢ㄦ寚閽堛備竴涓?<tt>T*</tt> 鎸囬拡鍙互鎸囧悜綾誨瀷涓?<tt>T</tt> 鎴?<tt>T</tt> 鐨勪換鎰忓瓙綾葷殑瀵硅薄錛屼緥濡傦細(xì)</p> <p><tt>Employee* e = new Manager(”Morris, Melinda”, 83000, “Finance”);</tt></p> <p>浣犲彲浠ュ皢鐖剁被鍜屼笉鍚屽瓙綾葷殑瀵硅薄娣峰悎鏀墮泦鍒頒竴涓厓绱犲潎涓烘寚閽堢殑鍚戦噺涓紝鐒跺悗璋冪敤鍔ㄦ佺粦瀹氱殑鍑芥暟錛屽涓嬫墍紺猴細(xì)</p> <p><tt>vector<Employee*> staff;</tt></p> <p><tt>. . .</tt></p> <p><tt>for (i = 0; i < staff.size(); i++)</tt></p> <p><tt>staff[i]->print();</tt></p> <img src ="http://m.shnenglu.com/smallfa/aggbug/68932.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/smallfa/" target="_blank">henry08</a> 2008-12-09 13:43 <a href="http://m.shnenglu.com/smallfa/archive/2008/12/09/68932.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>姝g‘鐨勬柟娉曟槸瀹氫箟operator++浠eference涓哄弬鏁扮被鍨? C++涓璕eference涓庢寚閽堬紙Pointer錛夌殑浣跨敤瀵規(guī)瘮http://m.shnenglu.com/smallfa/archive/2008/12/09/68928.htmlhenry08henry08Tue, 09 Dec 2008 05:16:00 GMThttp://m.shnenglu.com/smallfa/archive/2008/12/09/68928.htmlhttp://m.shnenglu.com/smallfa/comments/68928.htmlhttp://m.shnenglu.com/smallfa/archive/2008/12/09/68928.html#Feedback2http://m.shnenglu.com/smallfa/comments/commentRss/68928.htmlhttp://m.shnenglu.com/smallfa/services/trackbacks/68928.htmlday &operator++(day &d)
{
d = (day)(d + 1);
return d;
}

浣跨敤榪欎釜鍑芥暟錛?琛ㄨ揪寮?++x 鎵嶆湁姝g‘鐨勬樉紺轟互鍙?qiáng)姝<嫯鐨勬搷浣溿?br>Passing by reference涓嶄粎浠呮槸鍐檕perator++杈冨ソ鐨勬柟娉曪紝鑰屾槸鍞竴鐨勬柟娉曘?br>

 C++鍦ㄨ繖閲屽茍娌℃湁緇欐垜浠夋嫨鐨勪綑鍦般?br> 鍍忎笅闈㈢殑澹版槑:
day *operator++(day *d);
鏄笉鑳?閫氳繃緙栬瘧鐨勩?br>姣忎釜閲嶈澆鐨勬搷浣滅鍑芥暟蹇呴』鎴栬呮槸涓涓被鐨勬垚鍛橈紝 鎴栬呬嬌鐢ㄧ被鍨婽銆?T & 鎴?T const & 涓哄弬鏁扮被鍨嬶紝
榪欓噷T鏄竴涓被(class)鎴栧垪涓?enumeration)綾誨瀷銆?

涔熷氨鏄錛屾瘡涓涓噸杞芥搷浣滅蹇呴』浠ョ被鎴栧垪涓劇被鍨嬩負(fù)鍙傛暟綾誨瀷銆?br>
鎸囬拡錛屽嵆浣挎槸鎸囧悜涓涓被鎴栧垪涓劇被鍨嬪璞$殑鎸囬拡錛屼篃涓嶅彲浠ョ敤銆?br>
C++ 涓嶅厑璁稿湪閲嶈澆鎿嶄綔絎︽椂閲嶆柊瀹氫箟鍐呯疆鎿嶄綔絎︾殑鍚箟錛屽寘鎷寚閽堢被鍨嬨?br>鍥犳錛屾垜浠笉鍙互瀹氫箟錛?br>int operator++(int i); // 閿欒
鍥犱負(fù)瀹冭瘯鍥懼int閲嶆柊瀹氫箟鎿嶄綔絎?++ 鐨勫惈涔夈?鎴戜滑涔熶笉鍙互瀹氫箟錛?br>int *operator++(int *i); // 閿欒
鍥犱負(fù)瀹冭瘯鍥懼 int * 閲嶆柊瀹氫箟鎿嶄綔絎?++ 鐨勫惈涔?br>

 

 

References vs. const pointers

C++ 涓笉鍏佽瀹氫箟”const reference”錛?br> 鍥犱負(fù)涓涓猺eference澶╃敓灝辨槸const銆備篃灝辨槸璇達(dá)紝涓鏃﹀皢涓涓猺eference緇戝畾鍒頒竴涓璞★紝灝辨棤娉曞啀灝嗗畠閲嶆柊緇戝畾鍒板彟涓涓笉鍚岀殑瀵硅薄銆?br>鍦ㄥ0 鏄庝竴涓猺eference涔嬪悗娌℃湁鍐欐硶鍙互灝嗗畠閲嶆柊緇戝畾鍒板彟澶栦竴涓璞°?br>渚嬪錛?br>int &ri = i;
灝?ri 緇戝畾鍒?i 銆傜劧鍚庝笅闈㈢殑璧嬪?
ri = j;
騫朵笉鏄妸 ri 緇戝畾鍒?j 錛岃屾槸灝?j 涓殑鍊艱祴緇?ri 鎸囧悜鐨勫璞★紝涔熷氨鏄祴緇?i 銆?br>


綆鑰岃█涔嬶紝
涓涓猵ointer鍦ㄥ畠鐨勬湁鐢熶箣騫村彲浠ユ寚鍚戣澶氫笉鍚岀殑瀵硅薄錛?br>鑰屼竴涓猺eference鍙兘澶熸寚鍚戜竴涓璞°?br>鏈変簺浜鴻涓鴻繖鎵嶆槸 reference鍜?pointer鏈澶х殑涓嶅悓銆?br>鎴戝茍涓嶈禐鎴愩備篃璁歌繖鏄痳eference涓巔ointer鐨勪竴鐐逛笉鍚岋紝 浣嗗茍涓嶆槸reference鍜宑onst pointer鐨勪笉鍚屻?br>鍦ㄥ己璋冧竴閬嶏紝涓鏃︿竴涓猺eference涓庝竴涓璞$粦瀹氾紝灝變笉鑳藉啀灝嗗畠鏀規(guī)寚鍚戝彟澶栫殑涓滆タ銆?br>鏃㈢劧涓嶈兘鍐嶇粦瀹歳eference涔嬪悗鍐?鏀瑰彉錛?涓涓猺eference灝卞繀欏誨湪涓鍑虹敓灝辮緇戝畾銆?br>鍚﹀垯榪欎釜reference灝辨案榪滀笉鑳借緇戝畾鍒頒換浣曚笢瑗匡紝涔熷氨姣棤鐢ㄥ浜嗐?/p>

涓婁竴孌電殑璁ㄨ涔熷悓鏍峰畬鍏ㄩ傜敤浜庡父閲忔寚閽堬紙const pointer錛夈?br>錛堟敞鎰忥紝鎴戣繖閲岃鐨勬槸甯擱噺鎸囬拡錛坈onst pointer錛夛紝 鑰屼笉鏄寚鍚戝父閲忕殑鎸囬拡 “pointers to const”銆?
 渚嬪錛?br>涓涓猺eference澹版槑蹇呴』鍚屾椂甯︽湁涓涓垵濮嬪寲璧嬪鹼紝濡備笅鎵紺猴細(xì)

void f()
{
int &r = i;

}

鐪佺暐榪欎釜鍒濆鍖栬祴鍊煎皢浜х敓涓涓紪璇戦敊璇細(xì)

void f()
{
int &r; //閿欒

}

涓涓父閲忔寚閽堢殑澹版槑涔熷悓鏍峰繀欏誨甫鏈変竴涓垵濮嬪寲璧嬪鹼紝濡備笅鎵紺猴細(xì)

void f()
{
int *const p = &i;

}

鐪佺暐榪欎釜鍒濆鍖栬祴鍊煎悓鏍蜂細(xì)鍑洪敊錛?/p>

void f(){
int *const p; // 閿欒

}

鍦ㄦ垜鐪嬫潵
涓嶈兘澶熷reference浜屾緇戝畾浣滀負(fù)reference涓巔ointer鐨勪笉鍚屻?br>騫朵笉姣斿父閲忔寚閽堝拰闈炲父閲忔寚閽堢殑涓嶅悓鏇翠負(fù)鏄捐憲銆?br>



Null references

闄や簡鏄劇ず鐨勪笉鍚岋紝甯擱噺鎸囬拡涓巖eference榪樻湁涓鐐歸潪甯鎬笉鍚岋紝閭e氨鏄紝涓涓湁鏁堢殑reference蹇呴』鎸囧悜涓涓璞★紱鑰屼竴涓寚閽堜笉闇瑕併備竴涓寚閽堬紝鍗充嬌鏄竴涓父閲忔寚閽堬紝 閮藉彲浠ユ湁絀哄箋?涓涓┖鎸囬拡涓嶆寚鍚戜換浣曚笢瑗褲?/p>

榪欑偣涓嶅悓灝辨殫紺哄綋浣犳兂瑕佺‘淇′竴涓弬鏁板繀欏繪寚鍚戜竴涓璞$殑鏃跺欙紝搴旇浣跨敤reference浣滀負(fù)鍙傛暟綾誨瀷銆?渚嬪錛屼氦鎹㈠嚱鏁?swap function)錛屽畠鎺ュ彈涓や釜int鍙傛暟錛屽茍灝嗕袱涓弬鏁扮殑鏁板煎璋冿紝濡備笅鎵紺猴細(xì)

int i, j;
swap(i, j);

灝嗗師鏈湪 i 涓殑鍊兼斁鍒?j 涓紝 騫跺皢鍘熸湰鍦?j 涓殑鍊兼斁鍒?i 涓傛垜浠彲浠ヨ繖鏍峰啓榪欎釜鍑芥暟錛?/p>

void swap(int *v1, int *v2)
{
int temp = *v1;
*v1 = *v2;
*v2 = temp;
}

榪欑瀹氫箟涓嬶紝鍑芥暟瑕佸儚榪欐牱琚皟鐢? swap(&i, &j);

榪欎釜鎺ュ彛鏆楃ず鍏朵腑涓涓垨涓や釜鍙傛暟閮芥湁鍙兘涓虹┖(null)銆傝岃繖涓殫紺烘槸璇鐨勩備緥濡傦紝璋冪敤
swap(&i, NULL);
鐨勫悗鏋滃緢鍙兘鏄笉鎰夊揩鐨勩?/p>

鑰屽儚涓嬮潰榪欐牱瀹氫箟reference涓哄弬鏁幫細(xì)

void swap(int &v1, int &v2)
{
int temp = v1;
v1 = v2;
v2 = temp;
}

娓呮櫚鐨勮〃鏄庝簡璋冪敤swap搴旇鎻愪緵涓や釜瀵硅薄錛屽畠浠殑鍊煎皢琚氦鎹€?騫朵笖榪欐牱瀹氫箟鐨勫彟涓涓ソ澶勬槸錛屽湪璋冪敤榪欎釜鍑芥暟鐨勬椂鍊欙紝涓嶉渶瑕佷嬌鐢ㄩ偅浜?amp;絎﹀彿錛岀湅璧鋒潵鏇撮『鐪鹼細(xì)
swap(i, j);








 

Null references

闄や簡鏄劇ず鐨勪笉鍚岋紝
甯擱噺鎸囬拡涓巖eference榪樻湁涓鐐歸潪甯鎬笉鍚岋紝
閭e氨鏄紝涓涓湁鏁堢殑reference蹇呴』鎸囧悜涓涓璞★紱

鑰?span style="COLOR: red">涓涓寚閽堜笉闇瑕?/span>銆?br>涓涓寚閽堬紝鍗充嬌鏄竴涓父閲忔寚閽堬紝 閮藉彲浠ユ湁絀哄箋?涓涓┖鎸囬拡涓嶆寚鍚戜換浣曚笢瑗褲?br>

榪欑偣涓嶅悓灝辨殫紺哄綋浣犳兂瑕佺‘淇′竴涓弬鏁板繀欏繪寚鍚戜竴涓璞$殑鏃跺欙紝搴旇浣跨敤reference浣滀負(fù)鍙傛暟綾誨瀷銆?/span>
 渚嬪錛?br>浜ゆ崲鍑芥暟(swap function)錛屽畠鎺ュ彈涓や釜int鍙傛暟錛屽茍灝嗕袱涓弬鏁扮殑鏁板煎璋冿紝濡備笅鎵紺猴細(xì)

int i, j;
swap(i, j);

灝嗗師鏈湪 i 涓殑鍊兼斁鍒?j 涓紝 騫跺皢鍘熸湰鍦?j 涓殑鍊兼斁鍒?i 涓傛垜浠彲浠ヨ繖鏍峰啓榪欎釜鍑芥暟錛?/p>

void swap(int *v1, int *v2)
{
int temp = *v1;
*v1 = *v2;
*v2 = temp;
}

榪欑瀹氫箟涓嬶紝鍑芥暟瑕佸儚榪欐牱琚皟鐢? swap(&i, &j);

榪欎釜鎺ュ彛鏆楃ず鍏朵腑涓涓垨涓や釜鍙傛暟閮芥湁鍙兘涓虹┖(null)銆傝岃繖涓殫紺烘槸璇鐨勩備緥濡傦紝璋冪敤
swap(&i, NULL);
鐨勫悗鏋滃緢鍙兘鏄笉鎰夊揩鐨勩?/p>

鑰屽儚涓嬮潰榪欐牱瀹氫箟reference涓哄弬鏁幫細(xì)

void swap(int &v1, int &v2)
{
int temp = v1;
v1 = v2;
v2 = temp;
}

娓呮櫚鐨勮〃鏄庝簡璋冪敤swap搴旇鎻愪緵涓や釜瀵硅薄錛屽畠浠殑鍊煎皢琚氦鎹€?騫朵笖榪欐牱瀹氫箟鐨勫彟涓涓ソ澶勬槸錛屽湪璋冪敤榪欎釜鍑芥暟鐨勬椂鍊欙紝涓嶉渶瑕佷嬌鐢ㄩ偅浜?amp;絎﹀彿錛岀湅璧鋒潵鏇撮『鐪鹼細(xì)
swap(i, j);


鏇村畨鍏?


鏈変簺浜鴻涓烘棦鐒秗eference涓嶈兘澶熶負(fù)絀猴紝閭d箞瀹冨簲璇ユ瘮鎸囬拡鏇村畨鍏ㄣ?br> 鎴戣涓簉eference鍙兘瑕佸畨鍏ㄤ竴鐐癸紝浣嗕笉浼?xì)瀹夊叏寰堝銆?br>铏界劧涓涓湁鏁堢殑reference涓嶈兘涓虹┖錛屼絾鏄棤鏁堢殑鍙互鍛銆?br>瀹為檯涓婏紝鍦ㄥ緢澶氭儏鍐典笅紼嬪簭鏈夊彲 鑳戒駭鐢熸棤鏁堢殑reference錛岃屼笉鍙槸絀虹殑reference銆?/span>

 渚嬪錛?/span>
浣犲彲浠ュ畾涔変竴涓猺eference錛屼嬌瀹冪粦瀹氬埌涓涓寚閽堟寚鍚戠殑瀵硅薄錛屽涓嬫墍紺猴細(xì)

int *p;

int &r = *p;

濡傛灉鎸囬拡*p鍦╮eference瀹氫箟鏃跺垰濂戒負(fù)絀猴紝鍒欒繖涓猺eference涓虹┖銆?br> 浠庢妧鏈笂鏉ヨ錛岃繖涓敊璇茍涓嶅湪浜庡皢reference緇戝畾鍒頒竴涓┖鍊鹼紝鑰屾槸鍦ㄤ簬瀵逛竴涓┖鎸囬拡鍘誨弬鑰冦?br> 瀵逛竴涓┖鎸囬拡鍘誨弬鑰冧駭鐢熶簡涓涓笉紜畾鐨勬搷浣滐紝涔熷氨鎰忓懗鐫寰堝浜嬮兘鍙兘鍙戠敓錛岃屼笖澶ч儴鍒嗛兘涓嶆槸浠涔堝ソ浜嬨傚緢鏈夊彲鑳藉綋紼嬪簭灝唕eference r 緇戝畾鍒?p (p鎵鎸囧悜鐨勫璞?鐨勬椂鍊欙紝p瀹為檯涓婃病鏈夎鍘誨弬鑰冿紝鐢氳嚦紼嬪簭鍙槸灝唒鐨勫兼嫹璐濈粰瀹炵幇r鐨勬寚閽堛?br>鑰岀▼搴忓皢浼?xì)鐟艟l墽琛屼笅鍘葷洿鍒伴敊璇湪鍚庨潰鐨勮繍琛屼腑鏇翠負(fù)鏄庢樉鐨勮〃 鐜板嚭鏉ワ紝浜х敓涓嶅彲棰勭煡鐨勫嵄瀹熾?/p>

涓嬮潰鐨勫嚱鏁?br>灞曠ず浜?br>鍙﹀涓縐嶄駭鐢熸棤鏁坮eference鐨勬柟娉曪細(xì)

int &f()
{
int i;

return i;
}

榪欎釜鍑芥暟榪斿洖涓涓寚鍚戞湰鍦板彉閲?i 鐨剅eference銆?br>鐒惰屽綋鍑芥暟榪斿洖鏃訛紝鏈湴鍙橀噺 i 鐨勫瓨鍌ㄧ┖闂翠篃灝辨秷澶變簡銆傚洜姝よ繖涓嚱鏁板疄闄呰繑鍥炰簡涓涓寚鍚戣鍥炴敹浜嗙殑絀洪棿鐨剅eference銆傝繖涓搷浣滀笌榪斿洖涓涓寚鍚戞湰鍦板彉閲忕殑鎸囬拡鐨勫悗鏋滅浉鍚屻?br>鏈変簺緙栬瘧 鍣ㄥ彲浠ュ湪緙栬瘧鏃跺彂鐜拌繖涓敊璇紝浣嗕篃寰堟湁鍙兘涓嶄細(xì)鍙戠幇銆?br>



鎴戝枩嬈eference錛屼篃鏈夊緢濂界殑鐞嗙敱浣跨敤瀹冧滑浠f浛pointer銆?br>
浣嗗鏋滀綘鏈熸湜浣跨敤reference鏉ヤ嬌浣犵殑紼嬪簭鍋ュ.鎬ф樉钁楀寮猴紝閭d箞浣犲鍗婁細(xì)澶辨湜鐨?br>


鍙傝冭祫鏂欙細(xì)

  1. Saks, Dan. “Introduction to References,” Embedded Systems Programming, January 2001, p. 81.
  2. Saks, Dan. “References and const“, Embedded Systems Programming February 2001, p. 73.


henry08 2008-12-09 13:16 鍙戣〃璇勮
]]>
VC6.0涓噸杞芥搷浣滅鍑芥暟鏃犳硶璁塊棶綾葷殑縐佹湁鎴愬憳http://m.shnenglu.com/smallfa/archive/2008/12/08/68892.htmlhenry08henry08Mon, 08 Dec 2008 15:50:00 GMThttp://m.shnenglu.com/smallfa/archive/2008/12/08/68892.htmlhttp://m.shnenglu.com/smallfa/comments/68892.htmlhttp://m.shnenglu.com/smallfa/archive/2008/12/08/68892.html#Feedback5http://m.shnenglu.com/smallfa/comments/commentRss/68892.htmlhttp://m.shnenglu.com/smallfa/services/trackbacks/68892.html鍦?C++ 涓紝鎿嶄綔絎?榪愮畻絎︼級鍙互琚噸杞戒互鏀瑰啓鍏跺疄闄呮搷浣溿?br>鍚屾椂鎴戜滑鍙互瀹氫箟涓涓嚱鏁頒負(fù)綾葷殑鏈嬪弸鍑芥暟(friend function)浠ヤ究浣垮緱榪欎釜鍑芥暟鑳藉璁塊棶綾葷殑縐佹湁鎴愬憳錛?br>榪欎釜瀹氫箟閫氬父鍦ㄥご鏂囦歡涓畬鎴愩?/p>

鍦╒isual C++涓畾涔変竴鑸殑鍑芥暟涓烘湅鍙嬪嚱鏁伴氬父鏄病鏈夐棶棰樼殑銆?br>鐒惰屽鏌愪簺閲嶈澆鎿嶄綔絎︾殑鍑芥暟錛?br>鍗充嬌鎴戜滑灝嗗畠浠畾涔変負(fù)綾葷殑鏈嬪弸鍑芥暟錛孷C鐨勭紪璇戝櫒浠嶇劧浼?xì)鏄窘C哄嚭閿欎俊鎭紝
璁や負(fù)榪欎簺鏈嬪弸鍑芥暟鏃犳潈璁塊棶綾葷殑縐佹湁鎴愬憳銆?br>鎴戣涓鴻繖搴旇鏄疺C6.0鐨刡ug銆?br>

浠ヤ笅浠g爜灝辨槸涓緥瀛?

// 澶存枃浠?“Sample.h”
            #include<iostream>
            using namespace std;
            class Sample {
            public:
            Sample();
            friend ostream &operator<<(ostream &out, const Sample s);
            friend istream &operator>>(istream &in, Sample & s);
            private:
            int x;
            };

// 瀹炵幇鏂囦歡 “Sample.cpp”
            #include “Sample.h”
            Sample::Sample() {
            x=0;
            }
            istream &operator>>(istream &in, Sample & s) {
            cout<<”Please enter a value”<<endl;
            in >> s.x ;
            return in;
            }
            ostream &operator<<(ostream &out, const Sample s) {
            cout << s.x << endl;
            return out;
            }

浠ヤ笂浠g爜鍦╣nuc++涓紪璇戣繍琛屾鏃犻棶棰樸備絾鏄湪VC++6.0涓紪璇戠殑鏃跺欏氨浼?xì)鍑虹庮C互涓嬬殑緙栬瘧閿欒錛?/p>
Compiling…
Sample.cpp
c:\temp\sample.cpp(8) : error C2248: ‘x’ : cannot access private member declared in class ‘Sample’
c:\temp\sample.h(19) : see declaration of ‘x’
c:\temp\sample.cpp(13) : error C2248: ‘x’ : cannot access private member declared in class ‘Sample’
c:\temp\sample.h(19) : see declaration of ‘x’
Error executing cl.exe.Sample.obj - 2 error(s), 0 warning(s)

鍦╒C++ 6.0涓В鍐寵繖涓棶棰樻湁浠ヤ笅鍑犵鏂規(guī)硶錛?/p>

  • 鍦ㄥご鏂囦歡涓疄鐜頒綔涓烘湅鍙嬪嚱鏁扮殑鎿嶄綔絎﹀嚱鏁扮殑閲嶈澆錛屼篃灝辨槸璇村湪瀹炵幇鏂囦歡”Sample.cpp”涓皢鍑芥暟閲嶈澆鐨勫疄鐜板幓鎺夛紝鑰屽皢澶存枃浠朵慨鏀瑰涓嬶細(xì)
    // 淇敼鍚庣殑澶存枃浠?1 “Sample.h”
                    #include<iostream>
                    using namespace std;
                    class Sample {
                    public:
                    Sample();
                    friend ostream &operator<<(ostream &out, const Sample s);
                    friend ostream &operator<<(ostream &out, const Sample s) {
                    cout << s.x << endl;
                    return out;
                    }
                    friend istream &operator>>(istream &in, Sample & s);
                    friend istream &operator>>(istream &in, Sample & s) {
                    cout<<”Please enter a value”<<endl;
                    in >> s.x ;
                    return in;
                    }
                    private:
                    int x;
                    };
    
        
  • 鍦ㄥご鏂囦歡涓被瀹氫箟涔嬪墠灝嗙被鍜屾湅鍙嬫搷浣滅鍑芥暟鐨勫師鍨嬬壒鍒0鏄庝竴涓嬶紝涔熷氨鏄皢澶存枃浠朵慨鏀瑰涓?瀹炵幇鏂囦歡”Sample.cpp”涓嶇敤浣滀換浣曚慨鏀?錛?br>
    // 淇敼鍚庣殑澶存枃浠?2 “Sample.h”
                    #include<iostream>
                    using namespace std;
                    // 浠ヤ笅3琛屼唬鐮佷負(fù)鏂板姞鍏?
                    class Sample;
                    ostream &operator<<(ostream &out, const Sample s);
                    istream &operator>>(istream &in, Sample & s);
                    class Sample {
                    public:
                    Sample();
                    friend ostream &operator<<(ostream &out, const Sample s);
                    friend istream &operator>>(istream &in, Sample & s);
                    private:
                    int x;
                    };
    
        
  • 絎笁縐嶆柟娉曟槸瀵笽/O鍚嶇┖闂寸殑浣跨敤瀹炶鏄庣‘澹版槑錛屼篃灝辨槸璇村湪澶存枃浠?#8221;Sample.h”涓洿鎺ュ啓錛?br>#include<iostream>
    using std::ostream;
    using std::istream
    ….
    鍙栦唬 “using namespace std;”
    娉ㄦ剰錛氬湪榪欎釜渚嬪瓙閲屾垜浠湪瀹炵幇鏂囦歡 “Sample.cpp”涓寘鍚?“using namespace std;”榪欏彞璇濓紝鍚﹀垯鍦ㄥ疄鐜頒腑灝變笉鑳戒嬌鐢?“cout” , “cin”, “<< “, “>>” 鍜?endl 榪欎簺鍏抽敭瀛楀拰絎﹀彿銆備慨鏀瑰悗鐨勫畬鏁翠唬鐮佸涓嬶細(xì)

     

    // Sample.h
                    #include<iostream>
                    using std::istream;
                    using std::ostream;
                    class Sample {
                    public:
                    Sample();
                    friend ostream &operator<<(ostream &out, const Sample s);
                    /*friend ostream &operator<<(ostream &out, const Sample s) {
                    cout << s.x << endl;
                    return out;
                    }*/
                    friend istream &operator>>(istream &in, Sample & s);
                    /*friend istream &operator>>(istream &in, Sample & s) {
                    cout<<”Please enter a value”<<endl;
                    in >> s.x ;
                    return in;
                    }*/
                    private:
                    int x;
                    };
    // “Sample.cpp”
                    #include “Sample.h”
                    using namespace std;
                    Sample::Sample() {
                    x=5;
                    }
                    istream &operator>>(istream &in, Sample & s) {
                    cout<<”Please enter a value”<<endl;
                    in >> s.x ;
                    return in;
                    }
                    ostream &operator<<(ostream &out, const Sample s) {
                    cout << s.x << endl;
                    return out;
                    }
    
        


henry08 2008-12-08 23:50 鍙戣〃璇勮
]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              亚洲欧美日本国产有色| 亚洲电影观看| 狠狠色狠狠色综合系列| 国产精品久久久久婷婷| 国产欧美日本一区视频| 国产手机视频一区二区| 狠狠色伊人亚洲综合成人| 韩国精品久久久999| **性色生活片久久毛片| 亚洲娇小video精品| 中国成人在线视频| 亚久久调教视频| 久久性天堂网| 黄色国产精品| 亚洲欧洲一区二区三区在线观看| 99热在线精品观看| 午夜精品久久| 欧美成人久久| 亚洲视频一区| 麻豆精品视频在线| 欧美日韩免费视频| 国内在线观看一区二区三区| 亚洲日本欧美天堂| 欧美一区二区三区啪啪| 欧美大香线蕉线伊人久久国产精品| 亚洲乱码日产精品bd| 欧美综合二区| 国产精品久久久久久久第一福利| 怡红院精品视频| 亚洲一区二区三区精品视频 | 国产欧美日韩视频一区二区三区 | 在线观看三级视频欧美| 一本色道久久综合亚洲精品不卡| 亚洲欧美一区二区在线观看| 欧美h视频在线| 午夜视频在线观看一区| 欧美韩日一区二区三区| 国产日韩专区| 亚洲一区二区三区午夜| 欧美成人日本| 亚洲欧美中文日韩在线| 欧美三日本三级少妇三99| 尤妮丝一区二区裸体视频| 亚洲伊人观看| 日韩午夜激情av| 欧美成人午夜视频| 国产综合视频在线观看| 欧美一二三视频| 99人久久精品视频最新地址| 欧美激情免费观看| 亚洲裸体俱乐部裸体舞表演av| 久久久91精品国产一区二区三区| 99在线精品观看| 欧美激情精品久久久| 亚洲国产一区二区在线| 欧美91大片| 久久久久久久性| 黄色在线一区| 久久综合激情| 久久在线视频| 亚洲精品欧美一区二区三区| 欧美激情自拍| 欧美成人一区二区三区在线观看| 亚洲成人在线网| 美女性感视频久久久| 久久久之久亚州精品露出| 黄色成人免费观看| 毛片基地黄久久久久久天堂| 美女视频黄a大片欧美| 久久精品视频在线看| 激情另类综合| 麻豆国产精品一区二区三区 | 亚洲毛片一区二区| 欧美精品一区二区在线播放| 亚洲精品乱码久久久久久日本蜜臀| 欧美肥婆在线| 欧美喷潮久久久xxxxx| 亚洲无线一线二线三线区别av| 亚洲开发第一视频在线播放| 欧美午夜电影一区| 欧美在线日韩| 久久久久女教师免费一区| 亚洲国产综合91精品麻豆| 亚洲电影免费观看高清完整版在线 | 国产伦精品一区二区三区视频孕妇 | 欧美成人第一页| 欧美精品成人一区二区在线观看| 亚洲少妇诱惑| 亚洲女人天堂av| 黄色在线一区| 亚洲毛片播放| 国产一区二区三区成人欧美日韩在线观看 | 欧美国产欧美亚洲国产日韩mv天天看完整| 亚洲精品国产欧美| 亚洲小视频在线观看| 激情久久一区| 夜夜嗨av色一区二区不卡| 国内精品99| 亚洲美女一区| 国产偷国产偷亚洲高清97cao| 另类尿喷潮videofree| 欧美日韩一区二区三区在线看 | 欧美一区免费视频| 亚洲伦伦在线| 有坂深雪在线一区| 在线日本成人| 亚洲欧美一区二区精品久久久| 欧美在线视频免费观看| 亚洲精品一区在线观看| 亚洲自拍三区| 亚洲乱码国产乱码精品精| 亚洲综合二区| 亚洲伦理在线免费看| 午夜精品视频一区| 99国产精品99久久久久久| 久久亚洲风情| 欧美日韩国产二区| 美日韩精品视频免费看| 国产精品二区影院| 亚洲国产一区二区三区在线播| 国产裸体写真av一区二区| 亚洲三级电影全部在线观看高清| 国产日本欧美视频| 一区二区不卡在线视频 午夜欧美不卡在 | 亚洲免费视频网站| 欧美日韩精品免费观看视一区二区| 亚洲图色在线| 性视频1819p久久| 亚洲无线观看| 欧美日韩第一区日日骚| 欧美成人精品影院| 国产原创一区二区| 亚洲欧洲99久久| 亚洲欧美国产77777| 欧美三级网址| 91久久黄色| 亚洲精品一区二区三区不| 久久综合久久美利坚合众国| 久久精品人人做人人爽电影蜜月| 国产精品国产福利国产秒拍| 日韩午夜激情电影| 一区二区三区不卡视频在线观看| 欧美成人在线免费观看| 免费成人美女女| 在线观看一区二区精品视频| 久久久久亚洲综合| 欧美高清在线一区二区| 亚洲激情中文1区| 欧美高清不卡在线| 亚洲国产一区在线| 中日韩在线视频| 国产精品久久久久久亚洲毛片 | 久久久7777| 狠狠色丁香婷综合久久| 久久久久久伊人| 亚洲国产精品久久人人爱蜜臀| 99精品热视频| 国产精品美女诱惑| 欧美一区二区精美| 免费日韩精品中文字幕视频在线| 亚洲国产日本| 欧美日韩免费高清| 亚洲欧美在线一区| 麻豆freexxxx性91精品| 亚洲精品视频在线| 欧美丝袜第一区| 欧美亚洲午夜视频在线观看| 免费观看一级特黄欧美大片| 免费在线一区二区| 樱桃国产成人精品视频| 欧美在线视频免费观看| 久久精品综合一区| 亚洲欧洲综合| 欧美一区二区三区视频在线| 欧美视频中文一区二区三区在线观看 | 欧美一区二区三区久久精品| 国产精品一区一区三区| 亚洲欧美日韩一区在线| 毛片一区二区| 宅男精品视频| 激情av一区二区| 欧美午夜在线一二页| 久久夜色精品国产亚洲aⅴ| 一区二区三区国产盗摄| 久久这里只有| 亚洲专区一区二区三区| 在线国产精品播放| 国产欧美一区二区三区久久人妖| 欧美国产日本在线| 久久99伊人| 亚洲一区中文字幕在线观看| 亚洲国产日韩综合一区| 久久精品视频在线播放| 亚洲一区二区三区视频| 99re6热只有精品免费观看 | 欧美日韩亚洲高清| 久久久久久久999精品视频| 亚洲性感激情| 夜夜爽av福利精品导航| 亚洲福利视频专区|