锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
鎸夌収緇勪歡鍖栫殑紼嬪簭璁捐鐨勬濇兂錛屽鏉傜殑搴旂敤紼嬪簭琚璁℃垚涓浜涘皬鐨勶紝鍔熻兘鍗曚竴鐨勭粍浠舵ā鍧楋紝榪欎簺緇勪歡妯″潡鍙互榪愯鍦ㄥ悓涓鍙版満鍣ㄤ笂錛屼篃鍙互榪愯鍦ㄤ笉鍚岀殑鏈哄櫒涓娿?
闃呰鍏ㄦ枃
]]>
]]>
USACO
http://ace.delos.com/usacogate
緹庡浗钁楀悕鍦ㄧ嚎棰樺簱錛屼笓闂ㄤ負淇℃伅瀛︾珵璧涢夋墜鍑嗗
TJU
http://acm.tongji.edu.cn/
鍚屾祹澶у鍦ㄧ嚎棰樺簱錛屽敮涓鐨勪腑鏂囬搴擄紝閫傚悎NOIP閫夋墜
ZJU
http://acm.zju.edu.cn/
嫻欐睙澶у鍦ㄧ嚎棰樺簱
JLU
http://acm.jlu.edu.cn/
鍚夋灄澶у鍦ㄧ嚎棰樺簱錛堜竴鐩翠笂涓嶅幓錛?
PKU
http://acm.pku.edu.cn
鍖椾含澶у鍦ㄧ嚎棰樺簱
URAL
http://acm.timus.ru
淇勭綏鏂箤鎷夊皵澶у鍦ㄧ嚎棰樺簱
SGU
http://acm.sgu.ru/
淇勭綏鏂湥钀ㄦ媺鎵樺か宸炲ぇ瀛﹀湪綰塊搴?
ELJ
http://acm.mipt.ru/judge/bin/problems.pl?lang=en
淇勭綏鏂帿鏂鐗╃悊鎶鏈闄?
SPOJ
https://spoj.sphere.pl/
娉㈠叞鏍間絾鏂厠鐞嗗伐澶у
UVA
http://acm.uva.es/
瑗跨彮鐗欑殑Universidad de Valladolid鍦ㄧ嚎棰?
]]>
]]>
]]>
]]>
]]>
鍙兘浣犳槸鍏徃閲屽敮涓璋欑啛鏌愰」鍏抽敭鎶鏈殑楂樻墜錛岀己浜嗕綘錛屽叕鍙鎬究鐜╀笉杞簡錛涗篃鍙兘浣犳墍鍦ㄧ殑鍏徃瀵逛綘鐜版湁鐨勪笓涓氭妧鑳介珮鏋曟棤蹇э紝璁や負浣犲湪浠繪湡鍐呰凍浠ヨ儨浠誨叕鍙哥粰浣犵殑寮鍙戜換鍔★紙褰撶劧灝變笉浼氬啀鑺遍摱瀛愬幓鍩硅浣犲暒錛夈?br>涓嶈鍛婅瘔鎴戜綘浠叕鍙稿鍘熸潵鐢╒B3寮鍙戠殑涓氬姟澶勭悊緋葷粺寰堟弧鎰忥紝鑰屼綘鍛紝涔熻涓鴻嚜宸遍櫎浜嗙敤C璇█寮鍙戠▼搴忎互澶栵紝涓嶄細鍐嶅幓鍋氬埆鐨勪粈涔堜簨鎯呫?br>浣犳槸涓嶆槸瀵?NET鍜孞ava涓轟簤澶哄紑鍙戝伐鍏峰競鍦烘挄鐮磋劯鐨岀啛瑙嗘棤鐫癸紝浣犳槸涓嶆槸瀵筙ML灝嗚鍙栦唬鍏崇郴鏁版嵁搴撹屾棤鍔ㄤ簬琛蜂互鍙婁笉灞戜竴欏俱備綘鏄笉鏄涓轟綘鑳界敤姹囩紪鎴朇寮鍙戜換浣曚笢瑗匡紝鎵浠ヨ寰楀叾瀹冨紑鍙戝伐鍏烽兘涓嶅啀閲嶈……
濡傛灉鐪熸槸榪欐牱錛岄偅涔堜綘紱誨け涓氱殑鏃ュ瓙涓嶈繙浜嗭紝
淇楄瘽璇?-鏈洦緇哥吉……
鎯充竴鎯沖鏋滀綘鐜板湪澶變笟娌℃湁宸ヤ綔浼氭庝箞鏍鳳紝
鎯充竴鎯崇幇鍦ㄨ繕鏈夊姝や箣澶氱殑寮熷厔浠負浜嗘壘涓涓キ紕楄屽洓澶勫娉€?
鎯充竴鎯沖鏋滅幇鍦ㄤ綘浠叕鍙鎬負浜嗘姠鍗犲競鍦猴紝紿佺劧瑕佽繘琛屾妧鏈漿鍚戯紝浣犺鎬庝箞鍔烇紵
鎯充竴鎯充綘鐜板湪涓轟簡鑷繁鐨勫墠閫旓紝紿佺劧闇瑕佹敼鍙樻妧鏈鍩燂紝浣犺鎬庝箞鍔烇紵鎴栬呬綘涓嶆弧瓚充簬鐜板湪鑷繁鐨勭煡璇嗙粨鏋勶紝鎯寵鍐嶅厖瀹炰竴涓嬶紝浣嗗張涓嶇煡閫夋嫨閭d簺鍐呭鏉ュ涔犮傞偅涔堢戶緇線涓嬬湅錛屽茍涓璧峰弬鍔犺璁哄惂錛岀浉淇′細鏈夋敹鑾風殑銆?
鍦ㄤ漢鎵嶆嫑鑱樺競鍦猴紝浜轟簨緇忕悊浠叧娉ㄧ殑鏄疄闄呮妧鑳斤紝瑕佹眰鐜板湪鍜屽皢鏉ヤ粠浜嬪紑鍙戝伐浣滄墍闇瑕佺殑瀹為檯鎶鑳姐備綔涓轟竴涓妧鏈紑鍙戜漢鍛橈紝鑷繁鐨勭煡璇嗙粨鏋勬槸灝變笟鍜屼繚鎸佽嚜韜矖浣嶇殑鍏抽敭銆傛澶栬繕鏈変竴鐐逛篃寰堥噸瑕侊紝閭e氨鏄嵆渚夸綘涓嶅啀浠庝簨鎴栬呭姹傚疄闄呯殑寮鍙戝伐浣滐紝涔熷繀欏誨敖鍙兘澶氬湴浜嗚В鍜岀啛鎮夊綋浠婁綘鎵浠庝簨鐨勯鍩熶腑鏈鍓嶆部鐨勬妧鏈拰淇℃伅錛屽彧鏈夎繖鏍鋒墠鑳借窡涓婃妧鏈彂灞曠殑姝ヤ紣銆備互渚夸嬌鑷繁濮嬬粓澶勪簬涓嶈觸涔嬪湴銆?br>鏈枃鍒楀嚭浜嗗綋浠婅綆楁満杞歡寮鍙戝拰搴旂敤棰嗗煙鏈閲嶈鍗佺鍏抽敭鎶鏈帓鍚嶏紝濡傛灉浣犳兂淇濊瘉浣犵幇鍦ㄤ互鍙婃湭鏉ョ殑鍑犲勾涓嶅け涓氾紝閭d箞浣犳渶濂借窡涓婅繖浜涙妧鏈殑鍙戝睍銆傝櫧鐒朵綘涓嶅繀瀵硅繖鍗佺鎶鏈牱鏍風簿閫氾紝浣嗚嚦灝戝簲璇ュ瀹冧滑闈炲父鐔熸倝銆?/p>
涓銆乆ML
鍦ㄥ崄縐嶆妧鏈腑錛屾渶閲嶈鐨勪竴縐嶆妧鏈垜鎯沖簲璇ラ潪XML鑾睘銆傝繖閲屼笉浠呬粎鎸嘪ML瑙勮寖鏈韓錛岃繕鍖呮嫭涓緋誨垪鏈夊叧鐨勫熀浜嶺ML鐨勮璦錛氫富瑕佹湁XHTML錛孹SLT錛孹SL錛孌TDs錛孹ML Schema錛圶SD錛夛紝XPath錛孹Query鍜孲OAP銆傚鏋滀綘鐜板湪榪樺XML涓鏃犳墍鐭ワ紝閭d箞璧跺揩鐙傝ˉ鍚с俋ML鏄寘鍚被浼間簬HTML鏍囩鐨勪竴涓枃鏈枃浠訛紝鍦ㄨ繖涓枃浠朵腑瀹氫箟浜嗕竴涓爲鍨嬬粨鏋勬潵鎻忚堪瀹冩墍淇濆瓨鐨勬暟鎹?br>XML鏈澶х殑浼樼偣鏄綘鏃㈠彲浠ュ湪榪欎釜鏂囨湰鏂囦歡涓瓨鍌ㄧ粨鏋勫寲鏁版嵁錛屼篃鍙互鍦ㄥ叾涓瓨鍌ㄩ潪緇撴瀯鍖栨暟鎹斺斾篃灝辨槸璇達紝瀹冭兘鍖呭惈鍜屾弿榪?綺楃硻鐨?鏂囨。鏁版嵁錛屽氨璞″畠鎻忚堪"瑙勫垯鐨?琛ㄦ牸鏁版嵁涓鏍楓?
XHTML鏄洰鍓嶇紪鍐橦TML鐨勯閫夋柟娉曪紱鍥犱負XHTML鏈韓灝辨槸鏍煎紡鑹ソ鐨刋ML錛屼笌閫氬父鐣稿艦鐨凥TML鏂囨。鐩告瘮錛?XHTML鏍煎紡鏂囨。鏇村鏄撳鐞嗐?
XSLT鍜孹SL鏄XML鏂囨。榪涜杞崲鐨勮璦銆傚畠浠彲浠ュ皢XML鏂囨。杞崲鎴愬悇縐嶆牸寮忥紝姣斿鍙︿竴涓枃鏈枃浠躲丳DF鏂囦歡銆丠TML鏂囦歡銆侀楀彿鍒嗗壊鐨勬枃浠訛紝鎴栬呰漿鎹㈡垚鍏跺畠鐨刋ML鏂囨。銆?
DTDs 鍜孹ML Schema鐢ㄦ潵鎻忚堪XML鏂囦歡鎵鍖呭惈鐨勬暟鎹唴瀹圭殑綾誨瀷錛屼嬌浣犱笉鐢ㄧ紪鍐欏畾鍒剁殑浠g爜灝辮兘瀵筙ML鏂囨。鐨勫唴瀹硅繘琛?鏈夋晥鎬?媯鏌ワ紝浣垮唴瀹瑰己琛岄伒瀹堢粰鍑虹殑瑙勫垯銆?
XPath 鍜?XQuery鏄煡璇㈣璦錛岀敤瀹冧滑鍙互浠嶺ML鏂囨。涓惛鍙栧崟涓殑鏁版嵁欏規垨鑰呮暟鎹」鍒楄〃銆俋Query鐨勫姛鑳界壒鍒己澶э紝鍥犱負瀹冨XPath鏌ヨ榪涜浜嗘墿灞曘傚疄闄呬笂錛孹Query鍜孹ML鐨勫叧緋誨氨鍍廠QL涔嬩簬鍏崇郴鏁版嵁搴撲竴鏍楓?
SOAP鏄疻eb services闂磋繘琛岄氳鐨勬爣鍑嗗崗璁備綘涓嶅繀鐭ラ亾SOAP鍗忚鐨勬墍鏈夌粏鑺傦紝浣嗘槸浣犲簲璇ョ啛鎮夊叾甯哥敤瑙勫垯鍙婂叾宸ヤ綔鍘熺悊錛岃繖鏍蜂綘鎵嶈兘浣跨敤瀹冦?
浜屻乄eb Services
Web鏈嶅姟鏄疿ML嫻佽鍚庣殑鐩存帴浜х墿銆傚洜涓篨ML鍙互鎻忚堪鏁版嵁鍜屽璞★紝XML澶х翰鍙互淇濊瘉XML鏂囨。鏁版嵁鐨勬湁鏁堟э紝鍥犱負XML鐨勫熀浜庢枃鏈殑瑙勮寖錛屽洜鑰孹ML鏂囨。鏋佸叾閫傚悎浜庝綔涓轟竴縐嶈法騫沖彴閫氳鏍囧噯鐨勫熀鏈牸寮忋傚鏋滀綘榪樻病鏈夋帴瑙﹁繃Web鏈嶅姟錛岄偅涔堣繃涓嶄簡澶氫箙浣犺偗瀹氫細紕板埌瀹冿紝鎵浠ュ繀欏葷啛緇冩帉鎻eb鏈嶅姟錛屾渶濂芥槸綺鵑氬畠錛屽洜涓哄畠鏄縿浠婁負姝㈠簲鐢ㄧ▼搴忛棿璺ㄤ笉鍚岀綾繪満鍣ㄣ佽璦銆佸鉤鍙板拰浣嶇疆閫氳鐨勬渶綆鍗曠殑涓縐嶆柟寮忋備笉綆′綘闇涓嶉渶瑕佸畠錛學eb鏈嶅姟閮戒細鏄皢鏉ヤ簰鐢ㄦх殑涓昏瓚嬪娍銆?br>XML宸ヤ綔緇勭殑John Bosak鏇捐榪囷細"XML浣垮緱Java鏈変簨鍙仛"錛岄偅涔堬紝鎴戜滑涔熷彲浠ヨ錛學eb鏈嶅姟浣垮緱鎵鏈夎璦閮芥湁浜嬪彲鍋氥俉eb鏈嶅姟璁╄繍琛屽湪澶у瀷鏈轟笂鐨凜OBOL搴旂敤紼嬪簭涓庤繍琛屽湪鎵嬫寔璁懼涓婄殑搴旂敤紼嬪簭鐩鎬簰娌熼氾紱璁㎎ava灝忓簲鐢ㄤ笌.NET鏈嶅姟鍣ㄧ浉浜掗氳錛岃妗岄潰搴旂敤涓嶹eb鏈嶅姟鍣ㄨ繘琛屾棤緙濅氦浜掞紝涓嶄絾涓哄晢涓氭暟鎹鐞嗭紝鍚屾椂涔熶負鍟嗕笟鍔熻兘鎻愪緵浜嗘柟渚跨殑瀹炵幇鈥斺斿茍涓旇繖縐嶅疄鐜頒笌璇█銆佸鉤鍙般佸拰浣嶇疆鏃犲叧銆?/p>
涓夈侀潰鍚戝璞$紪紼?br>璁稿紼嬪簭鍛樹粛鐒惰涓篛OP涔冩妧鏈殑璞$墮涔嬪錛屼絾鏄粏緇嗘兂涓涓嬭繃鍘誨崄騫撮噷鍦ㄩ潰鍚戝璞¢鍩熼噷鍗犳嵁榪囩粺娌誨湴浣嶇殑寮鍙戣璦涔嬪悗錛屼綘灝變笉浼氳繖涔堣涓轟簡錛孫OP鐞嗗康浠嶴malltalk寮濮嬶紝鐒跺悗钄撳歡鍒癈++鍜孭ascal錛圖elphi錛夛紝鍒癑ava鎴愪負鐪熸鐨勪富嫻侊紝鍑犲勾涔嬪悗錛孷B.NET 鍜?C#鐨勫嚭鐜板彲浠ヨ鏄疧OP鍙戝睍鍒頒簡鐧誨嘲閫犳瀬鐨勫湴姝ャ傝櫧鐒朵嬌鐢ㄨ繖浜涜璦涓嶅繀浜嗚ВOOP鐨勬蹇碉紝浣嗗鏋滀綘緙轟箯涓浜汷OP鐨勫熀鏈煡璇嗗拰鏂規硶錛屾垜鎯充綘寰堥毦鍦ㄩ愭笎鐤茶蔣鐨勫氨涓氬競鍦轟腑鎵懼埌宸ヤ綔銆?/p>
鍥涖丣ava, C++, C#, VB.NET
濡傛灉浣犵儹琛蜂簬鎶鏈紝騫朵笖鐑埍緙栫▼錛岄偅涔堟垜鎯充綘搴旇杞繪澗鐜╄漿榪欎簺楂樼駭璇█錛屾垜璇寸殑鐜╄漿騫朵笉涓瀹氳浣犳垚涓鴻秴綰х紪紼嬮珮鎵嬨傝屾槸鑳界湅鎳傜敤榪欎簺璇█緙栧啓鐨勪唬鐮佸嵆鍙傚鏋滀綘榪樻湁綺懼姏鐢ㄥ畠浠紪鐮侀偅灝辨洿濂戒簡銆傚叾瀹炶繖縐嶆満浼氱敋灝戙備絾鏄湅浠g爜鐨勬満浼氬緢澶氾紝瀛︿範緙栫▼鐨勬渶鏈夋晥鐨勪竴縐嶆柟寮忓氨鏄湅婧愪唬鐮佲斺旀旦濡傜儫嫻風殑婧愪唬鐮佷腑寰堝閮戒笉鏄敤浣犳墍閽熺埍鐨勫紑鍙戣璦緙栧啓鐨勩?br>鍦ㄨ繃鍘葷殑鍑犲勾閲岋紝鍚勪釜璇█鍔熻兘鐨勫彂灞曞熀鏈笂閮藉樊涓嶅銆傜幇鍦ㄤ綘瀹屽叏鍙互鐢╒B.NET鏉ュ啓Windows鏈嶅姟銆乄eb搴旂敤鎴栬呭懡浠よ紼嬪簭銆傚嵆浣夸綘鍙敤鍏朵腑鐨勪竴縐嶈璦鍐欑▼搴忋傛垜璁や負涔熷畬鍏ㄦ湁蹇呰瀛︿範鍙﹀涓縐嶈璦錛屼嬌鑷繁鑳介槄璇誨拰鐞嗚В瀹冧滑鐜版湁鐨勪緥瀛愪唬鐮侊紝騫朵笖鑳藉皢涓縐嶈璦緙栧啓鐨勪唬鐮佽漿鎹㈡垚浣犻閫夌殑緙栫▼璇█浠g爜銆傝繖閲屽垪鍑虹殑鍥涚璇█鍙皳鏄竴涓己澶х殑寮鍙戣璦宸ュ叿綆憋紝濡傛灉浣犳帉鎻′簡瀹冧滑錛屾鏃犵枒闂綘涓瀹氭槸涓涓紬浜轟話鎱曠殑楂樻墜銆傝繖閲屾垜瑕佸0鏄庝竴涓嬶細閭e氨鏄垜騫舵病鏈夎蹇界暐鍜屾帓闄ゅ叾瀹冪殑楂樼駭璇█錛屽錛欶ORTRAN銆丆OBOL銆丄PL銆丄DA銆丳erl鍜孡isp絳夌瓑錛屾牴鎹綘鎵浠庝簨鐨勯鍩熶笉鍚岋紝搴旇閫夋嫨閫傚悎鐨勮璦鍜屽伐鍏楓?/p>
浜斻乯avascript
Java 鍜宩avascript涓よ呯殑鍚嶅瓧灝界寰堢被浼鹼紝浣嗗畠浠箣闂村茍娌℃湁浠涔堝叧緋匯備負浠涔堜竴縐嶈剼鏈璦浼氬姝ら噸瑕侊紝浠ヨ嚦浜庡皢瀹冨垪鍏ュ崄縐嶅叧閿妧鏈箣涓鍛紵浠旂粏鎯充竴涓嬪氨鐭ラ亾浜嗭紝鐩墠鎵鏈変富嫻佺殑嫻忚鍣ㄩ兘浣跨敤javascript銆傚鏋滀綘瑕佺紪鍐橶eb搴旂敤紼嬪簭錛岄偅涔坖avascript涓嶅彲鎴栫己銆傛澶栵紝javascript榪樿兘浣滀負涓縐嶆湇鍔″櫒绔殑鑴氭湰璇█錛屽灝嗗畠宓屽叆鍦ˋSP銆丄SP.NET涓紝鎴栬呭祵鍏SLT鏉ユ墿灞曞姛鑳姐傜洰鍓峧avascript鍦∕ozilla/Netscape涓槸嬋媧誨熀浜嶺UL鐣岄潰鐨勯閫夎璦錛屽畠媧劇敓鍑轟簡ActionScript錛屾垚涓篎lash MX搴旂敤鐨勭紪紼嬭璦銆傝繕鏈夊氨鏄痡avascript鏋佹湁鍙兘鎴愪負鏈潵鏂拌澶囩殑鑴氭湰璇█浠ュ強涓繪祦搴旂敤鐨勫畯璇█銆?br>鐩告瘮涔嬩笅錛孷BScript铏界劧鍦ㄥ井杞殑浜у搧涓緱鍒板緢濂界殑鏀寔錛屼絾浠庨暱榪滄潵鐪嬶紝娌℃湁榪硅薄琛ㄦ槑瀹冧細鏈夌編濂藉墠閫斻傚井杞嚜宸遍兘瓚嬪悜浜庣敤javascript錛堟垨鑰呯敤鐢眏avascript媧劇敓鐨凧Script錛夋潵緙栧啓鍏跺鎴風鑴氭湰浠g爜銆傚洜姝わ紝濡傛灉浣犺閫夋嫨鑴氭湰璇█錛岄潪javascript鑾睘銆?/p>
鍏丷egular Expressions
浠庢墍鍛ㄧ煡錛屽叧緋繪暟鎹簱鐨勬煡璇嬌鐢⊿QL錛屾悳绱ML鏂囨。鐢╔Path 鍜孹Query錛岃屾鍒欒〃杈懼紡鍒欑敤鏉ユ悳绱㈢函鏂囨湰銆備緥濡傦紝浣犲彲浠ョ敤涓涓懡浠ゆ潵鏌ユ壘鎴栧垹闄TML鏍煎紡鏂囦歡涓殑娉ㄩ噴鍐呭銆傚ぇ瀹墮兘鐢ㄨ繃"IndexOf"銆?InStr"浠ュ強"Like"榪欎簺鍐呭緩鍦╦avascript鎴朧B涓殑鏂囨湰鎼滅儲鍑芥暟錛岃繖浜涘嚱鏁拌櫧鐒跺緢瀹規槗浣跨敤錛屼絾鏄畠浠殑鍔熻兘鍗存棤娉曚笌姝e垯琛ㄨ揪寮忓悓鏃ヨ岃鈥斺旂幇鍦ㄦ瘡涓縐嶄富嫻佺殑寮鍙戣璦閮芥彁渚涘姝e垯琛ㄨ揪寮忕殑瀛樺彇銆傚敖綆℃湁浜鴻涓烘鍒欒〃杈懼紡鏈韓鐨勮鍐欒壈娑╅毦鎳傦紝浣嗘瘯绔熷畠鐨勫姛鑳藉己澶э紝浣跨敤瀹冪殑棰嗗煙涔熻秺鏉ヨ秺澶氥?/p>
涓冦丏esign Patterns
灝卞儚OOP閫氳繃鍒涘緩鍜屽垎綾誨璞℃潵綆鍖栫紪紼嬩竴鏍鳳紝璁捐妯″紡灝嗘櫘閫氱殑瀵硅薄浜や簰鍒嗙被鎴愭寚瀹氱殑妯″瀷錛岃繖鏄竴涓粠涓鑸埌鍏蜂綋鐨勮繃紼嬨侽OP鐨勬垚鍒嗕嬌鐢ㄥ緱瓚婂錛岃璁℃ā寮忓氨鏄懼緱瓚婃湁鐢ㄦ涔嬪湴銆傛墍浠ヤ綘蹇呴』鐞嗚В瀹冧滑錛岃窡涓婂叾鎬諱綋鐞嗚鐨勫彂灞曘?/p>
鍏丗lash MX
褰撲綘闇瑕佹瘮HTML鍜孋SS鎵鑳芥彁渚涚殑鏇村鐨勫鎴風鍥懼艦鍜岀紪紼嬭兘鍔涙椂錛孎lash鏄渶浣抽夋嫨銆傚湪Flash涓紪紼嬫瘮鐢↗ava灝忓簲鐢ㄦ垨鑰?NET浠g爜鏉ュ緱蹇緱澶氾紝涔熷鏄撳緱澶氥?br>鍦ㄦ渶鏂扮増鏈腑錛圡X錛夛紝Flash涓嶄粎鍙互鐢誨浘鍜岃繘琛屽姩鐢繪墦鍖咃紝瀹冭繕鏄釜楂樺害鐨勫彲緙栫▼搴旂敤鐜銆傚叿澶囧己澶х殑涓嶴OAP Web鏈嶅姟娌熼氱殑鑳藉姏錛屽彲浠ヨ皟鐢ㄨ繍琛屽湪榪滅鏈嶅姟鍣ㄤ笂鐨凜oldFusion銆丣ava鎴?NET浠g爜銆傚彲浠ヨFlash鍑犱箮鏃犲涓嶅湪錛屽寘鎷墜鎸佽澶囥佺疆欏剁洅銆佺敋鑷蟲槸鏂扮殑騫蟲澘鐢佃剳錛屼綘鍒板閮藉彲浠ヨ鍒板畠鐨勮韓褰憋紝鎵浠ヤ嬌鐢ㄥ畠瀹為檯涓婂彲浠ユ墿灞曞拰寤朵幾浣犵殑搴旂敤紼嬪簭浣跨敤棰嗗煙銆?/p>
涔濄丩inux/Windows
榪欐槸褰撲粖PCs鏈烘搷浣滅郴緇熺殑涓ゅぇ闃靛錛屽鏋滀綘鎯沖湪璁$畻鏈鴻涓氶噷娣鳳紝灝變竴瀹氳鐔熸倝瀹冧滑銆傚浜嶭inux錛屾渶濂借兘鑷繁瀹夎錛岄厤緗紝涓嬭澆瀹冪殑鍥懼艦鐢ㄦ埛鐣岄潰浠ュ強涓浜涘簲鐢ㄧ▼搴忋傝嚜宸卞畨瑁匒pache騫朵細緙栧啓Web搴旂敤紼嬪簭銆傝娓呴啋鍦拌璇嗗埌榪欎釜涓栫晫闄や簡Windows涔嬪錛岃繕鏈塋inux鐨勫瓨鍦ㄣ傚茍涓旇繖縐嶅眬闈㈠皢浼氶暱鏈熷瓨鍦ㄣ傚弽榪囨潵錛屽鏋滀綘鏄竴涓蹇犵殑Linux寮鍙戣咃紝涓嶈鍐嶇戶緇Windows鐨勬啂鎭訛紝瑕佺浉浜掑涔狅紝鍙栭暱琛ョ煭錛岀湅鐪媁indows鏈変粈涔堝ソ鐨勪笢涓滃彲浠ラ噰綰熾傝浣廤indows浠嶇劧鏄闈箣鐜嬨?br>璋佷篃璇翠笉鍑嗕綘浠叕鍙鎬粈涔堟椂鍊欎細鍐沖畾浠嶭inux杞悜Windows錛屾垨鑰呬粠Windows杞悜Linux銆傝皝涔熻涓嶅噯浠涔堟椂鍊欎綘浼氳煩妲借窇鍒板彟澶栦竴涓嬌鐢ㄤ笉鍚屽鉤鍙扮殑鍏徃涓婄彮鈥斺旀垨鑰呭嵆渚夸笉璺蟲Ы錛屼篃鏈夊彲鑳藉湪涓嶅悓騫沖彴涓婂紑濮嬪彟澶栦竴涓潃鎵嬬駭欏圭洰鈥斺旀墍浠ユ渶濂藉湪姣忎釜騫沖彴涓婇兘縐瘡涓浜涚粡楠岋紝鑰屼笉瑕佸湪涓媯墊爲涓婂悐姝匯?/p>
鍗併丼QL
灝界SQL鍦ㄥ綋浠婁紬澶氱殑鎶鏈腑宸蹭笉鏄粈涔堟柊涓滆タ錛岃屼笖鍦ㄦ湭鏉ョ殑鍗佸勾閲屽畠鐨勪綔鐢ㄥ緢鏈夊彲鑳借鍓婂急錛岀敋鑷蟲暣涓娣樻卑錛屼絾瀹冧粛鐒舵槸涓縐嶅熀鏈妧鑳解斺斿埆鐪嬪畠鏄竴縐嶅熀鏈妧鑳斤紝鑷充粖浠嶆湁璁稿寮鍙戜漢鍛樹笉鎳備粈涔堟槸SQL鎴栧瀹冧簡瑙d笉澶氥備笉瑕佹寚鏈涘熀浜庡浘褰㈢敤鎴風晫闈㈢殑SQL鏋勯犲櫒浼氬府浣犵殑蹇欙紝榪樻槸鑷繁浜叉墜鍐橲QL鏌ヨ鍚э紝紜畾浣犳帉鎻′簡SQL鐨勫熀鏈娉曘傜幇鍦ㄧ悊瑙d簡SQL錛屼笉浠呭浠ュ悗瀛︿範XQuery鏈夋墍瑁ㄧ泭錛岃屼笖鍙互浣夸綘寰堝揩鎵懼埌綆鍖栨垨鏀硅繘褰撳墠寮鍙戦」鐩殑閫斿緞銆?br>
鐩墠錛?span>Matlab騫挎硾鐨勫簲鐢ㄤ簬鑷姩鎺у埗銆佹暟瀛﹁繍綆椼佷俊鍙峰垎鏋愩佸浘鍍忓鐞嗐佽儲鍔″垎鏋愮瓑鍚勮鍚勪笟銆?span>MATLAB涔熷瓨鍦ㄧ潃鏌愪簺緙虹偣錛?span>Matlab鏄竴縐嶈В閲婃ц璦錛屽叾鐗圭偣鏄互鐭╅樀涓哄熀鏈暟鎹粨鏋勶紝瀵艱嚧鍏舵墽琛屾晥鐜囩浉瀵?span>C鎴?span>C+ +璇█瑕佷綆寰堝錛涘洜涓?span>Matlab紼嬪簭涓嶈兘鑴辯鍏剁幆澧冭繍琛岋紝鏁呬笉鑳界洿鎺ョ敤浜庡晢鐢ㄨ蔣浠剁殑寮鍙戙備笌姝ょ浉鍙嶏紝VC++鐢變簬鍏朵赴瀵屽緱浜烘満鐣岄潰錛岄珮鏁堢殑鎵ц鏁堢巼宸茬粡鎴愪負鍩轟簬Windows騫沖彴涓嬪紑鍙戝晢涓氳蔣浠剁殑蹇呭宸ュ叿銆傜劧鑰岋紝VC++瀵逛簬澶嶆潅鐨勬暟鍊艱繍綆楀氨鏈夌偣“鍔涗笉浠庡績”浜嗐傛墍浠ュ皢VC++涓?span>Matlab瀹岀編鐨勭粨鍚堬紝鍙戞尌鍚勮嚜鐨勪紭鍔垮叿鏈夌幇瀹炴剰涔夈傝嚜Matlab6.5鐗堟湰寮濮嬶紝鏂版帹鍑烘潵鐨?span>Combuilder鏀寔鎶婄敤Matlab緙栧啓鐨勭▼搴忓仛鎴?span>com緇勪歡錛屼緵鍏朵粬璇█璋冪敤銆傝鏂規硶瀹炵幇綆鍗曪紝閫氱敤鎬у己錛屾垚涓?span>VC涓?span>Matlab娣峰悎緙栫▼鏈鏈夋晥鐨勬柟娉曘?/span>
1 VC涓?span>Matlab娣峰悎緙栫▼鐨勬柟娉?/span>
1.1 閫氳繃Matlab Engine鏂瑰紡
Matlab Engine鏄寚涓緇?span>Matlab鎻愪緵鐨勬帴鍙e嚱鏁幫紝鏀寔C璇█錛?span> Matlab Engine閲囩敤C/S(瀹㈡埛鏈?span>/鏈嶅姟鍣?span>)妯″紡錛?span>Matlab浣滀負鍚庡彴鏈嶅姟鍣紝鑰?span>C紼嬪簭浣滀負鍓嶅彴瀹㈡埛鏈猴紝閫氳繃Windows鐨勫姩鎬佹帶浠朵笌鏈嶅姟鍣ㄩ氫俊錛屽悜Matlab Engine浼犻掑懡浠ゅ拰鏁版嵁淇℃伅錛屼粠Matlab Engine鎺ュ彈鏁版嵁淇℃伅銆傜敤鎴峰彲浠ュ湪鍓嶅彴搴旂敤紼嬪簭涓皟鐢ㄨ繖浜涙帴鍙e嚱鏁幫紝瀹炵幇瀵?span>Matlab Engine鐨勬帶鍒躲傞噰鐢ㄨ繖縐嶆柟娉曞嚑涔庤兘鍒╃敤Matlab鍏ㄩ儴鍔熻兘錛屼絾鏄渶瑕佸湪鏈哄櫒涓婂畨瑁?span>Matlab杞歡錛岃屼笖鎵ц鏁堢巼浣庯紝鍥犳鍦ㄥ疄闄呭簲鐢ㄤ腑涓嶉噰鐢ㄨ繖縐嶆柟娉曪紝鍦ㄨ蔣浠跺紑鍙戜腑涔熶笉鍙錛岃繖縐嶆ā寮忓彧閫傚悎涓漢浣跨敤鎴栧仛婕旂ず銆?span>
1.2 鐩存帴璋冪敤Matlab鐨?span>C/C++鏁板鍑芥暟搴?/span>
Matlab涓彁渚涗簡鍙互渚?span>C/C++璇█璋冪敤鐨?span>C/C++鏁板鍑芥暟搴擄紝鍏朵腑鍖呭惈浜嗗ぇ閲忕敤C/C++璇█閲嶆柊緙栧啓鐨?span>Matlab鏁板鍑芥暟錛岃繖浜涘嚱鏁版秹鍙婂埌綰垮艦浠f暟銆佹暟鍊煎垎鏋愩佸倕绔嬪彾鍙樻崲銆佸欏瑰紡璁$畻銆佽В寰垎鏂圭▼絳夛紝騫朵笖鍑芥暟搴撲腑鎻愪緵浜嗗ぇ閲忓悇縐嶇煩闃墊搷浣滃嚱鏁幫紝鍦?span>VC涓彲浠ョ洿鎺ヤ嬌鐢ㄨ繖浜涘嚱鏁幫紝閫氳繃榪欎簺鍑芥暟鍙互鍦?span>VC涓柟渚跨殑瀹炵幇鍦?span>Matlab涓煩闃佃繍綆楀姛鑳姐傜敤榪欑鏂規硶鍙互寰堢伒媧葷殑璋冪敤Matlab鏉ョ紪鍐欏簲鐢ㄧ▼搴忥紝浣嗚姹傝鑰呭C/C++璇█闈炲父鐔熸倝錛屽茍涓旇繖縐嶆ā寮忎笉鑳藉寘鎷墍鏈夌殑Matlab鍑芥暟錛屽挨鍏舵槸鏃犳硶鍏呭垎浣跨敤Matlab鎻愪緵鐨勮灝界殑緇樺浘鍑芥暟銆?/span>
1.3 鐢?span>Matlab鑷甫鐨?span>Matlab Compiler
Matlab Compiler鐨勪綔鐢ㄦ槸灝?span>m鏂囦歡杞寲鎴?span>C/C++浠g爜錛堜篃灝辨槸閫氬父鎵鐢ㄧ殑mcc鍛戒護錛?span>,榪欑婧愪唬鐮侀渶瑕佺敤C/C++緙栬瘧鍣ㄧ紪璇戣繛鎺ユ垚鐙珛搴旂敤紼嬪簭錛屽湪灝?span>m鏂囦歡杞垚鐙珛搴旂敤紼嬪簭鐨勮繃紼嬩腑鐢熸垚鐨?span>C/C++鏂囦歡錛屽師鍒欎笂鏄彲浠ヨ鍏跺畠鐨?span>C/C++浠g爜璋冪敤鐨勶紝緙栬瘧鍣ㄥ彲浠ラ氳繃璁劇疆mcc鍛戒護鐨勯夐」錛屽皢m鏂囦歡緙栬瘧鎴愬姩鎬侀摼鎺ュ簱鏂囦歡銆?span>C/C++鏂囦歡銆佸彲鎵ц鏂囦歡絳変竴緋誨垪鏂囦歡銆傚埌matlab R21.1涓烘錛?span>Matlab Compiler鐨?span>m紼嬪簭杞崲鎴?span>C/C++浠g爜鍔熻兘鏈夊緢澶氶檺鍒訛細
鈶翠笉鑳借漿鎹㈣剼鏈?span>m鏂囦歡錛屽彧鑳借漿鎹?span>m鍑芥暟錛?span>
鈶典笉鑳戒嬌鐢?span>matlab瀵硅薄錛?span>
鈶朵笉鑳界敤input鎴栬?span>eval鎿嶄綔matlab絀洪棿鍙橀噺錛?span>
鈶蜂笉鑳藉姩鎬佸湴鍛藉悕鍙橀噺錛岀劧鍚庣敤load鎴栬?span>save鍛戒護鏉ユ搷浣滐紱
鈶鎬笉鑳藉鐞嗗叿鏈夊祵濂楄皟鐢ㄥ叾浠?span>m鏂囦歡鐨?span>m鏂囦歡錛?span>
鈶逛笉鑳戒嬌鐢?span>MATLAB鍐呰仈鍑芥暟錛?span>
1.4 浣跨敤matcom宸ュ叿
榪欐槸絎笁鏂規帶浠訛紝寰堝皬(
鈶磋漿鎹㈣繃紼嬬畝鍗?span>(鐢?span>matcom宸ュ叿鑷姩瀹炵幇)錛屽鏄撳疄鐜幫紱
鈶靛彲浠ユ柟渚跨殑鐢熸垚鍔ㄦ侀摼鎺ュ簱鏂囦歡(dll)鍜屽彲鎵ц鏂囦歡(exe)錛?span>
鈶朵笉浠呭彲浠ヨ漿鎹㈢嫭绔嬬殑鑴氭湰鏂囦歡錛屼篃鍙互杞崲宓屽鑴氭湰鏂囦歡錛?span>
鈶瘋緗幆澧冨悗錛屽彲浠ヤ嬌鐢?span>Matlab鐨勫伐鍏風鍑芥暟錛?span>
浣?span>matcom涔熸湁浠ヤ笅涓嶈凍錛?span>
鈶村struct絳夌被鐨勬敮鎸佹湁緙洪櫡錛屽class鏁版嵁綾誨瀷錛?span>
鈶甸儴鍒嗙粯鍥捐鍙ユ棤娉曞疄鐜版垨寰椾笉鍒板噯紜浘璞★紝灝ゅ叾鏄笁緇村浘璞★紱
鈶跺綋娑夊強鍒扮殑澶嶆潅鍑芥暟璋冪敤鏃跺祵濂楃殑鏂囦歡鏁伴噺寰堝銆?span>
鍥犳鍦ㄤ笉娑夊強鍒頒笁緇村仛鍥句互鍙?span>m鏂囦歡涓嶅ぇ鐨勬儏鍐典笅鎺ㄨ崘浣跨敤銆?/span>
1.5 浣跨敤Matlab鐨?span>Combuilde宸ュ叿
COM鏄?span>component object module鐨勭畝縐幫紝瀹冩槸涓縐嶉氱敤鐨勫璞℃帴鍙o紝浠諱綍璇█鍙鎸夌収榪欑鎺ュ彛鏍囧噯錛屽氨鍙互瀹炵幇璋冪敤瀹冦?span>Matlab6.5鏂版帹鍑烘潵鐨?span>Combuilder灝辨槸鎶婄敤Matlab緙栧啓鐨勭▼搴忓仛鎴?span>com緇勪歡錛屼緵鍏朵粬璇█璋冪敤銆傝鏂規硶瀹炵幇綆鍗曪紝閫氱敤鎬у己錛岃屼笖鍑犱箮鍙互浣跨敤Matlab鐨勪換浣曞嚱鏁?span>(娉ㄦ剰錛氫笉鏀寔鑴氭湰鏂囦歡錛岃剼鏈枃浠朵嬌鐢ㄦ椂瑕佹敼涓哄嚱鏁版枃浠?span>)錛屽洜姝ゅ湪紼嬪簭杈冨ぇ銆佽皟鐢ㄥ伐鍏風鍑芥暟鎴栬皟鐢ㄥ嚱鏁拌緝澶氭椂鎺ㄨ崘浣跨敤錛岃繖涔熸槸Matlab鍏徃鎺ㄨ崘鐨勪嬌鐢ㄦ柟娉曘?/span>
2 鍩轟簬COM鎺ュ彛鐨?span>Matlab涓?span>VC娣峰悎緙栫▼瀹炵幇FFT杞崲
2.1 鍒涘緩Matlab婧愭枃浠?/span>
鍦?span>Matlab涓疄鐜?span>FFT杞崲鍙渶瑕佷竴涓嚱鏁板嵆鍙?/span>
(1) 鏂板緩M鏂囦歡錛屽湪M鏂囦歡涓緭鍏ヤ互涓嬩袱鏉¤鍙ワ細
Function FFT(X,Y) %瀹炵幇FFT杞崲銆傚嚱鏁板悕涓?span>FFT錛?span>x涓鴻緭鍏ュ弬鏁幫紝y涓鴻緭鍑哄弬鏁?/span>
Y=fft(X); %fft杞崲瀹炵幇鍑芥暟
(2錛変繚瀛樹負FFT.m 鐨?span>M鏂囦歡銆?/span>
2.2 鍦?span>Matlab涓嬪垱寤?span>COM緇勫緩
(1錛夊湪matlab command window杈撳叆濡備笅鍛戒護錛?/span>
>>comtool
(2錛夊嚭鐜?span>com緙栬緫鐣岄潰鍚庯紝閫夋嫨File->New Project寤虹珛鏂板伐紼?span>testfft錛屽茍灝?span>FFT.m鍔犲叆鍒版柊寤哄伐紼嬩腑銆?/span>
(3錛夌偣鍑?span>Build->COM Object…鐢熸垚COM緇勪歡銆?/span>
鑷蟲com緇勪歡宸茬粡鐢?span>matlab鍋氬ソ錛岄粯璁ょ殑淇濆瓨浣嶇疆涓猴細matlab瀹夎浣嶇疆\work\component銆?/span>
2.3 VC涓嬭皟鐢?span>COM緇勪歡
(1錛夊皢testfft_idl.h 鍜?span>testfft_idl_i.c鏂囦歡鎷瘋礉鍒?span>VC寤虹珛鐨勫伐紼嬬洰褰曚笅銆備袱鏂囦歡榛樿鐩綍涓?span>\work\component\src
(2錛夊皢鐩綍/extern/include/涓嬬殑mwcomtypes.h鏂囦歡鎷瘋礉鐨?span>VC寤虹珛鐨勭洰褰曚笅銆?/span>
(3錛夊皢涓婇潰涓変釜鏂囦歡鍔犲叆VC宸ョ▼錛氬伐紼?span>->娣誨姞宸ョ▼->Files錛岄夋嫨鍒氬垰鎷峰埌鐩綍涓嬬殑testfft_idl.h 鍜?span>testfft_idl_i.c鏂囦歡銆?/span>
(4) 涓虹▼搴忔坊鍔犲ご鏂囦歡testfft_idl.h 銆?span>testfft_idl_i.c鍜?span>mwcomtypes.h
(5錛夊~鍐欒皟鐢?span>COM緇勪歡浠g爜錛?/span>
if(FAILED(CoInitialize(NULL))) //鍒濆鍖栬皟鐢?span>com
{
AfxMessageBox("unable to initialize COM");
}
Itestfft *st=NULL;
HRESULT hr=CoCreateInstance(CLSID_testfft,NULL,CLSCTX_ALL,IID_Itestfft,(void **)&st);
if(SUCCEEDED(hr))
{
VARIANT x,y;
VariantInit(&x);
VariantInit(&y);
x.vt=VT_I4;
x.lVal=4;
st->fte(x,y); //x涓鴻緭鍏ュ弬鏁幫紝y涓鴻緭鍑哄弬鏁?/span>
st->Release();
}
else
{
AfxMessageBox("unsucceed");
}
鑷蟲瀹炵幇VC涓嬭皟鐢?span>COM緇勪歡瀹炵幇FFT杞崲銆?/span>
3 緇撹
瀹炶返琛ㄦ槑鐢?span>COM鏂規硶瀹炵幇VC涓?span>Matlab娣峰悎緙栫▼鍏鋒湁瀹炵幇綆鍗曘佹墽琛屾晥鐜囬珮銆佸嚑涔庢敮鎸佹墍鏈夌殑matlab鍑芥暟銆佹槗縐繪絳変紭鐐廣?/span>
1 瀹炰緥紼嬪簭璁捐瑕佺偣
鈶?鍙栧緱瀵硅瘽妗嗘爣棰樻爮浣嶇疆鍜屽ぇ灝忥紝鍦ㄦ爣棰樻爮鐨勯傚綋浣嶇疆緇樺埗鏈灝忓寲鎸夐挳錛屽茍璁頒綇鎸夐挳鐨勪綅緗?/p>
鈶?鍦ㄦ渶灝忓寲鎸夐挳鎵鍦ㄥ尯鍩熸嫻嬮紶鏍囨槸鍚﹀湪璇ュ尯鍩熷唴銆佹槸鍚︽寜涓嬶紝鏄惁鍙戦佹渶灝忓寲娑堟伅浣垮璇濇鏈灝忓寲錛屽惁鍒欎笉鍙樸?/p>
鈶?灝嗘渶灝忓寲鎸夐挳鐭╁艦鍖哄煙鍚戝伐鍏鋒彁紺烘潯鎺т歡娉ㄥ唽錛岃繖鏍峰綋榧犳爣鍦ㄦ渶灝忓寲鎸夐挳鐭╁艦鍖哄煙鏃訛紝鏄劇ず鎻愮ず鏂囨湰銆?/p>
2 瀹炰緥紼嬪簭瀹炵幇鐨勬楠ゅ強璇存槑
鈶?鍑嗗浜屼釜浣嶅浘錛屼竴涓綅鍥捐〃紺烘渶灝忓寲鎸夐挳姝e父鏄劇ず鐘舵侊紝鍙︿竴涓綅鍥捐〃紺烘渶灝忓寲鎸夐挳琚寜涓嬫椂鐨勭姸鎬併?/p>
鈶?浣跨敤MFC AppWizard(exe)鍒涘緩宸ョ▼鍚嶄負MinButton鐨勫璇濇紿椾綋錛屽鍥炬墍紺猴紝灝嗕簩涓寜閽綅鍥懼鍏ュ璇濇鐨勮祫婧愰噷銆?/p>
鈶?鍦–MinButtonDlg瀵硅瘽妗嗙被涓繘琛屽彉閲忓畾涔夊拰鍑芥暟澹版槑銆?/p>
鈶?鍒╃敤ClassWizard涓哄璇濇綾繪坊鍔犳秷鎭疻M_NCPAINT錛學M_ACTIVATE鍜學M_NCMOUSEMOVE鐨勬秷鎭鐞嗗嚱鏁幫紝鍦ㄨ繖涓変釜鍑芥暟涓皟鐢ㄦ垚鍛樺嚱鏁癉rawButton()鏉ョ粯鍒舵寜閽?/p>
鈶?鍒╃敤ClassWizard涓烘渶灝忓寲鎸夐挳鍏寵仈瀵瑰簲鐨勬秷鎭疻M_NCLBUTTONDOWN鍜屾秷鎭鐞嗗嚱鏁癘nNcLButtonDown(UINT nHitTest, CPoint point)銆?/p>
鈶?鍑芥暟DrawButton()鐢ㄤ簬緇樺埗鎸夐挳銆傜敱浜庢渶灝忓寲鎸夐挳騫朵笉鏄竴涓湡瀹炵殑鎸夐挳鎺т歡錛岃屾槸涓涓敾鍦ㄦ爣棰樻爮涓婄殑浣嶅浘銆傚洜姝わ紝涓轟簡鍦ㄥ璇濇紿椾綋鏍囬涓婄粯鐢伙紝蹇呴』鍒涘緩涓涓獥鍙h澶囩幆澧冪被錛堢浉褰撲簬鍒涘緩涓涓敾甯冿紝鏈変簡榪欎釜鐢誨竷錛屾墠鑳藉湪鐢誨竷涓婄粯鐢伙紝涔熷氨鏄墠鑳藉湪鏍囬鏍忎笂緇樼敾銆傦級
鈶?nbsp;璋冪敤鍑芥暟GetWindowDC()鍙栧緱鎸囧悜CDC鐨勬寚閽?CDC* pDC錛?/p>
鈶?璋冪敤鍑芥暟 CreateCompatibleDC(CDC* pDC)鍒涘緩涓涓唴瀛樿澶囩幆澧冿紝浠ヤ究鍦ㄥ唴瀛樹腑淇濆瓨浣嶅浘錛屽茍涓庢寚瀹氱殑紿楀彛璁懼鐜鐩稿吋瀹癸紱
鈶?璋冪敤鍑芥暟SelectObject(CBitmap *pBitmap)錛屽皢浣嶅浘閫夊叆鍐呭瓨璁懼鐜涓紱
鈶?璋冪敤鍑芥暟 BitBlt(int x, int y, int nWidth, int nHeight, CDC *pSrc, int xSrc, int ySrc, DWORD dwRop)灝嗕綅鍥懼鍒跺埌瀹為檯璁懼鐜涓傚叾涓紝鍙傛暟x, y 琛ㄧず浣嶅浘鐩爣鐭╁艦宸︿笂瑙掔殑x, y 閫昏緫鍧愭爣鍊鹼紱nWidth, nHeight 琛ㄧず浣嶅浘鐩爣鐭╁艦鐨勯昏緫瀹藉害鍜岄珮搴︼紱pSrc 琛ㄧず婧愯澶囩幆澧僀DC鎸囬拡錛泋Src, ySrc 琛ㄧず浣嶅浘婧愮煩褰㈢殑宸︿笂瑙掔殑x, y 閫昏緫鍧愭爣鍊鹼紱dwRop 琛ㄧず鏄劇ず浣嶅浘鐨勫厜鏍呮搷浣滄柟寮忋傚厜鏍呮搷浣滄柟寮忔湁澶氱錛岃繖閲屼嬌鐢ㄧ殑鏄疭RCCOPY錛岃〃紺哄皢浣嶅浘鐩存帴澶嶅埗鍒扮洰鏍囧唴瀛樿澶囩幆澧冧腑銆傝繖閲岃璇存槑涓鐐癸細鍑芥暟BitBlt()鍙兘“涓姣斾竴”鐨勬樉紺轟綅鍥撅紝濡傝浠繪剰緙╂斁鏄劇ず浣嶅浘欏諱嬌鐢ㄥ嚱鏁癝tretchBlt()錛岃鍑芥暟鐨勪嬌鐢ㄦ柟娉曪紝璇峰弬鑰冪浉鍏充功綾嶃?/p>
鈶?浣嶅浘閫夊叆鍐呭瓨鐜涓樉紺哄悗錛屽簲璋冪敤鍑芥暟SelectObject(CBitmap *pOldBitmap)鎭㈠鍘熸潵鐨勫唴瀛樿澶囩幆澧冦?/p>
鈶?鎻愮ず鏉″疄璐ㄤ笂鏄竴涓皬鐨勫脊鍑虹獥鍙o紝鍦ㄧ獥鍙d腑鏄劇ず涓琛屾枃鏈紝鐢ㄦ潵鎻忚堪宸ュ叿錛堟垨鍖哄煙錛夌殑鐢ㄩ旀垨鍏跺畠淇℃伅銆傚湪MFC涓彁渚涗簡宸ュ叿鎻愮ず鏉℃帶浠剁被CToolTipCtrl錛岀敱瀹冩潵綆$悊鎻愮ず鏉°傚湪榪欓噷錛屾垜浠粠CToolTipCtrl綾繪淳鐢熷瓙綾籆ToolTips銆傚湪瀛愮被鐨勫畾涔変腑娣誨姞鍑芥暟BOOL AddToolTip( UINT nID, LPRECT lpRect, LPCTSTR lpszText)錛岃鍑芥暟鐢ㄤ簬鍚戝伐鍏鋒彁紺烘潯鎺т歡娉ㄥ唽鎸夐挳鍖哄煙鍜屾彁紺烘枃鏈紝褰撻紶鏍囧湪鏈灝忓寲鎸夐挳鍖哄煙鏃訛紝鏄劇ず鎻愮ず鏂囨湰銆?/p>
3 涓昏鐨勭▼搴忎唬鐮?/p>
鈶?鍦ㄥ璇濇綾諱腑瀹氫箟鐩稿簲鐨勫彉閲忓拰鍑芥暟澹版槑
class CMinButtonDlg : public CDialog
{
…………
public:
CRect m_rtButtMin; //璁板綍鏈灝忓寲鎸夐挳浣嶇疆
void DrawButton(); //緇樺埗鏈灝忓寲鎸夐挳
BOOL m_BMPPressed;//鏈灝忓寲鎸夐挳鐘舵佹爣蹇?/p>
CRect m_ButtMinTips;//璁板綍鏈灝忓寲鎸夐挳鍖哄煙
protected:
CToolTips m_ToolTip;//瀹氫箟宸ュ叿鎻愮ず鏉℃帶浠跺彉閲?/p>
void GetMinButRect();//鑾峰彇鏈灝忓寲鎸夐挳鎵鍦ㄥ尯鍩?/p>
//娑堟伅澶勭悊鍑芥暟
afx_msg void OnNcLButtonDown(UINT nHitTest, CPoint point);
afx_msg void OnNcPaint();
afx_msg void OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized);
afx_msg void OnNcMouseMove(UINT nHitTest, CPoint point);
…………
}錛?/p>
鈶?瀵硅瘽妗嗙被涓笁涓秷鎭鐞嗗嚱鏁板畾涔夊涓嬶細
//瀵瑰簲娑堟伅WM_NCPAINT鐨勬秷鎭鐞嗗嚱鏁?/p>
void CMinButtonDlg::OnNcPaint()
{
CDialog::OnNcPaint();
DrawButton(); //緇樺埗鏈灝忓寲鎸夐挳
}
//瀵瑰簲娑堟伅WM_ACTIVATE鐨勬秷鎭鐞嗗嚱鏁?/p>
void CMinButtonDlg::OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized)
{
CDialog::OnActivate(nState, pWndOther, bMinimized);
DrawButton(); //緇樺埗鏈灝忓寲鎸夐挳
}
//瀵瑰簲娑堟伅WM_NCMOUSEMOVE鐨勬秷鎭鐞嗗嚱鏁?/p>
void CMinButtonDlg::OnNcMouseMove(UINT nHitTest, CPoint point)
{
DrawButton(); //緇樺埗鏈灝忓寲鎸夐挳
CDialog::OnNcMouseMove(nHitTest, point);
}
鈶?緇樺埗鏈灝忓寲鎸夐挳鐨勫嚱鏁?/p>
void CMinButtonDlg::DrawButton()
{
CDC* pDC = GetWindowDC();
CDC* pMemDC=new CDC;
CBitmap *pBitmap1=new CBitmap;
CBitmap *pBitmap2=new CBitmap;
CBitmap *pOldBitmap;
CRect rtWnd, rtButtons, rtTitle;
//鍒涘緩涓涓唴瀛樿澶囩幆澧?/p>
pMemDC->CreateCompatibleDC(pDC);
if(!pDC) return;
GetWindowRect(&rtWnd);
//鍙栧緱鏍囬鏍忕殑鐭╁艦
rtTitle.left = GetSystemMetrics(SM_CXFRAME);
rtTitle.top = GetSystemMetrics(SM_CYFRAME);
rtTitle.right = rtWnd.right - rtWnd.left - GetSystemMetrics(SM_CXFRAME);
rtTitle.bottom = rtTitle.top + GetSystemMetrics(SM_CYSIZE);
//璁$畻鏈灝忓寲鎸夐挳鐨勪綅緗紝浣嶅浘澶у皬涓?5X15
rtButtons.top=rtTitle.top+1;
rtButtons.bottom=rtButtons.top+15;
rtButtons.right = rtTitle.right-20;
rtButtons.left = rtButtons.right-15;
m_rtButtMin = rtButtons;
pBitmap1->LoadBitmap(IDB_BITMAP1); //璋冨叆姝e父鐘舵佹寜閽殑浣嶅浘
pBitmap2->LoadBitmap(IDB_BITMAP2); //璋冨叆鎸夐挳鎸変笅鐘舵佺殑浣嶅浘
m_rtButtMin.OffsetRect(rtWnd.TopLeft());//璁板綍鏈灝忓寲鎸夐挳鐨勪綅緗?/p>
//灝嗘寜閽綅鍥捐皟鍏ュ唴瀛樿澶囩幆澧冧腑錛宮_BMPPressed涓篢RUE
//璋冨叆姝e父鐘舵佹寜閽殑浣嶅浘
pOldBitmap=pMemDC->SelectObject(m_BMPPressed ? pBitmap1: pBitmap2);
//灝嗘寜閽綅鍥懼鍒跺埌瀹為檯鐨勫唴瀛樿澶囩幆澧冧腑
pDC->BitBlt(rtButtons.left, rtButtons.top, rtButtons.Width(),
rtButtons.Height(), pMemDC, 0, 0, SRCCOPY);
pMemDC->SelectObject(pOldBitmap);//鎭㈠鍘熸潵鐨勫唴瀛樿澶囩幆澧?/p>
//閲婃斁璧勬簮
ReleaseDC(pMemDC);
ReleaseDC(pDC);
delete pMemDC;
delete pBitmap1;
delete pBitmap2;
}
鈶?瀵瑰簲榧犳爣宸﹂敭鐨刉M_NCLBUTTONDOWN娑堟伅澶勭悊鍑芥暟
void CMinButtonDlg::OnNcLButtonDown(UINT nHitTest, CPoint point)
{
CDialog::OnNcLButtonDown(nHitTest, point);
//媯嫻嬫槸鍚﹀湪鏈灝忓寲鎸夐挳鍖哄煙鍐呮寜涓嬫寜閽?/p>
if (m_rtButtMin.PtInRect(point))
{
m_BMPPressed=FALSE;//緇樺埗鎸夐挳鎸変笅鏃剁殑鐘舵?/p>
DrawButton(); //緇樺埗鏈灝忓寲鎸夐挳
m_BMPPressed=TRUE;//緇樺埗鎸夐挳鐨勬甯哥姸鎬?/p>
SendMessage(WM_SYSCOMMAND, SC_MINIMIZE, MAKELPARAM(point.x, point.y));//鍙戦佹渶灝忓寲娑堟伅
}
}
鈶?//鍦ㄦ渶灝忓寲鎸夐挳鍖哄煙瀹炵幇鎻愮ず鏂囨湰
BOOL CToolTips::AddToolTip( UINT nID, LPRECT lpRect, LPCTSTR lpszText )
{
TOOLINFO Tips;
memset(&Tips, 0, sizeof(TOOLINFO));
Tips.cbSize = sizeof(TOOLINFO);
Tips.hwnd = GetOwner()->GetSafeHwnd();
Tips.uFlags = TTF_SUBCLASS;
Tips.uId = nID;
memcpy(&Tips.rect, lpRect, sizeof(RECT));
Tips.lpszText = (LPSTR)lpszText;
return (BOOL)SendMessage(TTM_ADDTOOL, 0, (LPARAM)&Tips);
}
鈶?鍦ㄥ璇濇鍒濆鍖栧嚱鏁癘nInitDialog()涓坊涓嬪垪浠g爜錛?/p>
m_ToolTip.Create(this,TTS_ALWAYSTIP);//鍒涘緩宸ュ叿鎻愮ず鎺т歡錛孴TS_ALWAYSTIP琛ㄧず錛?/涓嶈鎺т歡鎵灞炵獥浣撴槸鍚︽椿鍔紝鎻愮ず鏉″緇堟湁鏁?/p>
GetMinButRect();
ScreenToClient(&m_ButtMinTips);//灞忓箷鍧愭爣杞崲涓虹獥浣撳潗鏍?/p>
m_ToolTip.AddToolTip(1,&m_ButtMinTips,"鏈灝忓寲");
鍦ㄨ璁℃暟鎹簱鏃訛紝鏈閲嶈鐨勬楠ゆ槸瑕佺‘淇濇暟鎹紜垎甯冨埌鏁版嵁搴撶殑琛ㄤ腑銆備嬌鐢ㄦ紜殑鏁版嵁緇撴瀯錛屽彲浠ユ瀬澶у湴綆鍖栧簲鐢ㄧ▼搴忕殑鍏朵粬鍐呭錛堟煡璇€佺獥浣撱佹姤琛ㄣ佷唬鐮佺瓑錛夈傛紜繘琛岃〃璁捐鐨勬寮忓悕縐版槸“鏁版嵁搴撹鑼冨寲”銆?/p>
鏈枃綆瑕佷粙緇嶆暟鎹簱瑙勮寖鍖栫殑鍩烘湰姒傚康鍜屼竴浜涢渶瑕佹敞鎰忓茍鍔涙眰閬垮厤鐨勫父瑙侀棶棰樸?/p>
鍦ㄨ璁¤〃涔嬪墠錛屽簲鏄庣‘鎮ㄦ墦綆楀浣曞鐞嗘暟鎹紝榪樿浜嗚В闅忕潃鏃墮棿鐨勬帹縐繪暟鎹細鍙戠敓浠涔堟牱鐨勫彉鍖栥傛偍鎵鍋氱殑鍋囪灝嗕細褰卞搷鏈緇堢殑璁捐銆?/p>
璁捐搴旂敤紼嬪簭鏃訛紝鍏抽敭瑕佷簡瑙h璁$殑鏈緇堢粨鏋滐紝浠ヤ究紜繚鎮ㄥ噯澶囧ソ鎵鏈夊繀闇鐨勬暟鎹茍鐭ラ亾鍏舵潵婧愩備緥濡傦紝鎶ヨ〃鐨勫瑙傘佹瘡涓暟鎹殑鏉ユ簮浠ュ強鎵闇鐨勬墍鏈夋暟鎹槸鍚﹂兘瀛樺湪銆傚欏圭洰鎹熷け鏈澶х殑鑾繃浜庡湪欏圭洰鍚庢湡鍙戠幇閲嶈鎶ヨ〃緙哄皯鏁版嵁銆?/p>
鐭ラ亾闇瑕佷粈涔堟牱鐨勬暟鎹悗錛屽氨蹇呴』紜畾鏁版嵁鐨勬潵婧愩傛暟鎹槸鍚︿粠鍏朵粬鏁版嵁婧愪腑瀵煎叆錛熸暟鎹槸鍚﹂渶瑕佹竻鐞嗘垨楠岃瘉錛熺敤鎴鋒槸鍚﹂渶瑕佽緭鍏ユ暟鎹紵
鏄庣‘鎵闇鏁版嵁鐨勭被鍨嬪拰鏉ユ簮鏄暟鎹簱璁捐鐨勭涓姝ャ?/p>
鐢ㄦ埛鏄惁闇瑕佺紪杈戣繖浜涙暟鎹紵濡傛灉闇瑕侊紝搴斿浣曟樉紺烘暟鎹互渚夸簬鐢ㄦ埛鐞嗚В鍜岀紪杈戯紵鏈夋病鏈夐獙璇佽鍒欏拰鐩稿叧鐨勬煡鎵捐〃錛熻姹傚緙栬緫鍜屽垹闄や繚鐣欏浠界殑鏁版嵁杈撳叆鏈夋病鏈夌浉鍏寵仈鐨勫鏍擱棶棰橈紵闇瑕佷負鐢ㄦ埛鏄劇ず鍝簺鎽樿淇℃伅錛熸槸鍚﹂渶瑕佺敓鎴愬鍑烘枃浠訛紵浜嗚В榪欎簺淇℃伅鍚庯紝灝卞彲浠ユ兂璞″瓧孌典箣闂存槸濡備綍鐩鎬簰鍏寵仈鐨勪簡銆?/p>
灝嗘暟鎹垎緇勬斁鍏ョ浉鍏沖瓧孌碉紙渚嬪涓庡鎴風浉鍏崇殑淇℃伅銆佷笌鍙戠エ鐩稿叧鐨勪俊鎭瓑錛夛紝姣忎釜瀛楁緇勯兘浠h〃瑕佸緩绔嬬殑琛ㄣ傜劧鍚庤冭檻濡備綍灝嗚繖浜涜〃鐩鎬簰鍏寵仈銆備緥濡傦紝鍝簺琛ㄥ叿鏈変竴瀵瑰鍏崇郴錛堜緥濡傦紝涓涓鎴峰彲鑳芥寔鏈夊寮犲彂紲級錛熷摢浜涜〃鍏鋒湁涓瀵逛竴鍏崇郴錛堣繖縐嶆儏鍐典笅錛岄氬父浼氳冭檻灝嗗叾緇勫悎鍒頒竴涓〃涓級錛?/p>
璁捐琛ㄤ箣鍚庯紝甯稿父浼氱敱浜庢病鏈夎冭檻鏃墮棿鐨勫獎鍝嶈屽鑷翠互鍚庡嚭鐜頒弗閲嶉棶棰樸傝澶氳〃璁捐鍦ㄥ綋鏃朵嬌鐢ㄦ椂鏁堟灉闈炲父濂斤紝浣嗘槸錛屽父甯鎬細鍥犱負鐢ㄦ埛淇敼鏁版嵁銆佹坊鍔犳暟鎹互鍙婇殢鏃墮棿鐨勬帹縐昏屽穿婧冦傚紑鍙戜漢鍛樼粡甯鎬細鍙戠幇闇瑕侀噸鏂拌璁¤〃鐨勭粨鏋勬潵閫傚簲榪欎簺鍙樺寲銆傝〃鐨勭粨鏋勫彂鐢熷彉鍖栨椂錛屾墍鏈夌浉鍏崇殑鍐呭錛堟煡璇€佺獥浣撱佹姤琛ㄣ佷唬鐮佺瓑錛変篃蹇呴』闅忎箣鏇存柊銆傜悊瑙e茍棰勬祴鏁版嵁浼氶殢鏃墮棿鎺ㄧЩ鍙戠敓鍝簺鍙樺寲錛屽彲浠ュ疄鐜版洿濂界殑璁捐錛屽噺灝戦棶棰樼殑鍙戠敓銆?/p>
浜嗚В濡備綍鍒嗘瀽鍜岀鐞嗘暟鎹悓鏍峰緢閲嶈銆傛偍搴旇娣卞埢鐞嗚В鏌ヨ鐨勫伐浣滃師鐞嗭紝鐞嗚В濡備綍浣跨敤鏌ヨ鍦ㄥ涓〃涔嬮棿閾炬帴鏁版嵁錛屽浣曚嬌鐢ㄦ煡璇㈠鏁版嵁榪涜鍒嗙粍鍜屾眹鎬伙紝浠ュ強濡備綍鍦ㄤ笉闇瑕佷互瑙勮寖鍖栨牸寮忔樉紺烘暟鎹椂浣跨敤浜ゅ弶琛ㄦ煡璇€?/p>
濂界殑鏁版嵁璁捐鐨勬渶緇堢洰鏍囧氨鏄騫寵 涓や釜闇瑕侊細鏃㈣闅忕潃鏃墮棿鐨勬帹縐繪湁鏁堝湴瀛樺偍鏁版嵁錛屽張瑕佽交鏉懼湴媯绱㈠拰鍒嗘瀽鏁版嵁銆傜悊瑙f煡璇㈢殑鍔熻兘瀵規紜璁¤〃寰堟湁甯姪銆?/p>
榪欓儴鍒嗕粙緇嶆暟鎹簱瑙勮寖鍖栨墍娑夊強鐨勫熀鏈蹇碉紝鑰屼笉鏄鏁版嵁搴撹鑼冨寲榪涜鐞嗚鎬х殑鎺㈣銆傚浣曞湪鎮ㄧ殑瀹為檯鎯呭喌涓簲鐢ㄨ繖浜涙蹇靛彲鑳戒細闅忕潃搴旂敤紼嬪簭闇瑕佺殑涓嶅悓鑰屾湁鎵鍙樺寲銆傝繖閮ㄥ垎鐨勭洰鐨勬槸鐞嗚В榪欎簺鍩烘湰姒傚康銆佹牴鎹疄闄呴渶瑕佸簲鐢ㄥ畠浠紝騫剁悊瑙e亸紱昏繖浜涙蹇靛皢浼氬嚭鐜板摢浜涢棶棰樸?/p>
澶ч儴鍒嗘暟鎹簱寮鍙戜漢鍛橀兘鐞嗚В鏁版嵁搴撹鑼冨寲鐨勫熀鏈蹇點傜悊鎯蟲儏鍐典笅錛屾偍甯屾湜灝嗙浉鍚岀殑鏁版嵁瀛樺偍鍦ㄥ悓涓涓湴鏂癸紝騫跺湪闇瑕佸紩鐢ㄦ椂浣跨敤 ID 鏉ヨ繘琛屽紩鐢ㄣ傚洜姝わ紝濡傛灉鏌愪簺淇℃伅鍙戠敓浜嗗彉鍖栵紝鍒欏彲浠ュ湪涓涓湴鏂硅繘琛屾洿鏀癸紝鑰屾暣涓▼搴忎腑鐨勭浉搴斾俊鎭篃浼氶殢涔嬫洿鏀廣?/p>
渚嬪錛屽鎴瘋〃浼氬瓨鍌ㄦ瘡涓鎴風殑璁板綍錛屽寘鎷鍚嶃佸湴鍧銆佺數璇濆彿鐮併佺數瀛愰偖浠跺湴鍧浠ュ強鍏朵粬鐗瑰緛淇℃伅銆傚鎴瘋〃涓彲鑳藉寘鍚敮涓鐨?CustomerID 瀛楁錛堥氬父鏄?Autonumber 瀛楁錛夛紝榪欎釜瀛楁鍗寵琛ㄧ殑涓婚敭瀛楁錛屽叾浠栬〃浣跨敤瀹冩潵寮曠敤璇ュ鎴楓傚洜姝わ紝鍙戠エ琛ㄥ彲浠ュ彧寮曠敤瀹㈡埛鐨?ID 鍊鹼紝鑰屼笉鏄湪姣忓紶鍙戠エ涓瓨鍌ㄥ鎴風殑鎵鏈変俊鎭紙鍥犱負鍚屼竴涓鎴峰彲鑳戒細鎸佹湁澶氬紶鍙戠エ錛夛紝榪欐牱鍒╃敤瀹㈡埛鐨?ID 鍊煎嵆鍙粠瀹㈡埛琛ㄤ腑鏌ユ壘瀹㈡埛鐨勮緇嗕俊鎭備嬌鐢?Access 涓姛鑳藉己澶х殑紿椾綋錛堜嬌鐢ㄧ粍鍚堟鍜屽瓙紿椾綋錛夛紝鍙互杞繪澗鍦板畬鎴愯繖欏瑰伐浣溿傚鏋滈渶瑕佷慨鏀瑰鎴蜂俊鎭紙渚嬪鏂板鐢佃瘽鍙風爜錛夛紝鍙渶鍦ㄥ鎴瘋〃涓慨鏀癸紝搴旂敤紼嬪簭涓紩鐢ㄨ淇℃伅鐨勪換浣曞叾浠栭儴鍒嗛兘浼氶殢涔嬭嚜鍔ㄦ洿鏂般?/p>
浣跨敤姝g‘瑙勮寖鍖栫殑鏁版嵁搴擄紝閫氳繃綆鍗曠殑緙栬緫鍗沖彲杞繪澗澶勭悊鏁版嵁闅忔椂闂存帹縐昏屽彂鐢熺殑鏇存敼銆備嬌鐢ㄦ湭姝g‘瑙勮寖鍖栫殑鏁版嵁搴擄紝閫氬父闇瑕佸埄鐢ㄧ紪紼嬫垨鏌ヨ鏉ユ洿鏀瑰鏉¤褰曟垨澶氫釜琛ㄣ傝繖涓嶄粎浼氬鍔犲伐浣滈噺錛岃繕浼氬鍔犵敱浜庢湭姝g‘鎵ц浠g爜鎴栨煡璇㈣屽鑷存暟鎹笉涓鑷寸殑鍙兘鎬с?/p>
鐞嗘兂鐨勬暟鎹簱搴旇鍙渶瑕侀殢鐫鏃墮棿鐨勬帹縐繪坊鍔犳柊鐨勮褰曪紝鏁版嵁搴撹〃搴旇鑳藉淇濆瓨澶ч噺璁板綍銆備絾鏄紝濡傛灉鎮ㄥ彂鐜伴渶瑕佸鍔犳洿澶氬瓧孌碉紝鍒欏彲鑳戒細紕板埌璁捐闂銆?/p>
鐢靛瓙琛ㄦ牸涓撳緇忓父浼氶亣鍒頒笂榪伴棶棰橈紝鍥犱負浠栦滑涔犳儻浜庢寜鐓ц璁$數瀛愯〃鏍肩殑鏂瑰紡璁捐鏁版嵁搴撱傝璁$粡甯擱殢鏃墮棿鍙樺寲鐨勫瓧孌碉紙渚嬪錛屽勾銆佸搴︺佷駭鍝佸拰閿鍞漢鍛橈級闇瑕佸湪灝嗘潵娣誨姞鏂板瓧孌點傝屾紜殑璁捐搴旇鏄漿鎹俊鎭茍灝嗛殢鏃墮棿鍙樺寲鐨勬暟鎹斁鍦ㄤ竴涓瓧孌靛唴錛岃繖鏍峰氨鍙互娣誨姞鏇村璁板綍銆備緥濡傦紝鍙渶鍒涘緩“騫?#8221;瀛楁錛岀劧鍚庡湪璇ュ瓧孌典腑杈撳叆鍚勮褰曠浉搴旂殑騫翠喚鍊煎嵆鍙紝鏃犻渶涓烘瘡騫村垱寤轟竴涓崟鐙殑瀛楁銆?/p>
澧炲姞棰濆鐨勫瓧孌靛彲鑳戒細浜х敓闂錛屽洜涓鴻〃緇撴瀯鐨勫彉鍖栦細瀵瑰簲鐢ㄧ▼搴忕殑鍏朵粬閮ㄥ垎浜х敓褰卞搷銆傚湪琛ㄤ腑娣誨姞鏇村瀛楁鏃訛紝渚濊禆璇ヨ〃鐨勫璞″拰浠g爜涔熼渶瑕佹洿鏂般備緥濡傦紝鏌ヨ闇瑕佽幏鍙栭澶栫殑瀛楁錛岀獥浣撻渶瑕佹樉紺鴻繖浜涘瓧孌碉紝鑰屾姤琛ㄥ垯闇瑕佸寘鍚繖浜涘瓧孌碉紝絳夌瓑銆備絾鏄紝濡傛灉鏁版嵁宸茬粡瑙勮寖鍖栵紝鍒欑幇鏈夊璞′細鑷姩媯绱㈡柊鏁版嵁錛屽茍姝g‘璁$畻鎴栨樉紺鴻繖浜涙暟鎹傛煡璇㈠姛鑳藉挨鍏跺己澶э紝鍥犱負瀹冨厑璁告偍鎸?#8220;騫?#8221;瀛楁榪涜鍒嗙粍錛屼互閫愬勾鏄劇ず鎽樿錛堜笉綆¤〃涓寘鍚摢浜涘勾浠斤級銆?/p>
浣嗘槸錛屾暟鎹鑼冨寲騫朵笉鎰忓懗鐫涓嶈兘鏄劇ず鎴栦嬌鐢ㄩ殢鏃墮棿鑰屽彉鍖栨垨渚濊禆鏃墮棿鐨勫瓧孌點傞渶瑕佹祻瑙堟垨鏄劇ず榪欑被淇℃伅鐨勫紑鍙戜漢鍛橀氬父鍙互浣跨敤浜ゅ弶琛ㄦ煡璇㈡潵杈懼埌榪欎竴鐩殑銆傚鏋滄偍涓嶇啛鎮変氦鍙夎〃鏌ヨ錛屽簲璇ュ涔犲浣曚嬌鐢ㄥ畠浠傝櫧鐒跺畠浠笌琛ㄦ湁鎵涓嶅悓錛堝挨鍏舵槸鐢ㄦ埛鏃犳硶緙栬緫浜ゅ弶琛ㄦ煡璇㈢殑緇撴灉錛夛紝浣嗗畠浠殑紜彲浠ョ敤浜庡湪鏁版嵁琛ㄤ腑鏄劇ず淇℃伅錛堟渶澶氬彲浠ヨ揪鍒?255 涓瓧孌碉級銆傚鏋滆鍦ㄦ姤琛ㄤ腑浣跨敤瀹冧滑錛屽垯浼氭洿鍔犲鏉傦紝鍥犱負鎶ヨ〃闇瑕佸寘鍚澶栫殑鎴栦笉鏂彉鍖栫殑瀛楁鍚嶃傝繖灝辨槸涓轟粈涔堝ぇ澶氭暟鎶ヨ〃灝嗘暟鎹綔涓虹嫭绔嬬殑鍒嗙粍錛堣屼笉鏄嫭绔嬬殑鍒楋級鏄劇ず鐨勫師鍥犮傚浜庨偅浜涘埆鏃犻夋嫨鐨勬儏鍐碉紝鎮ㄥ繀欏昏姳鏃墮棿鍘昏В鍐寵繖涓棶棰樸傚笇鏈涙墍鏈変漢閮借兘澶熺悊瑙h繖縐嶅喅瀹氫細闅忕潃鏃墮棿鐨勫彉鍖栧鍏朵粬璧勬簮浜х敓鐨勫獎鍝嶃?/p>
榪欏氨鏄負浠涔堝鍔犺褰曟槸鍏嶈垂鐨勶紙榪欐槸鏁版嵁搴撶殑宸ㄥぇ浼樺娍錛夎屽鍔犲瓧孌墊槸濡傛鏄傝吹鐨勫師鍥犮傚鏋滄暟鎹簱璁捐姝g‘錛屽垯鍙互閫傚簲鍚勭鍚勬牱鐨勫彉鍖栥?/p>
鏈夋椂鏁版嵁闇瑕佸弽瑙勮寖鍖栵紝浠ヤ究淇濆瓨鍙兘浼氶殢鏃墮棿鍙樺寲鐨勪俊鎭?/p>
鍦ㄩ氳繃瀹㈡埛 ID 鍙峰皢鍙戠エ閾炬帴鍒板鎴瘋〃鐨勭畝鍗曠ず渚嬩腑錛屾垜浠彲鑳介渶瑕佷繚鐣欏紑鍑哄彂紲ㄦ椂鐨勫鎴峰湴鍧錛堣屼笉鏄埗浣滃彂紲ㄦ椂鐨勫湴鍧錛屽洜涓哄鎴蜂俊鎭湪榪欎袱涓簨浠朵箣闂村彲鑳戒細鏈夋墍鍙樺寲錛夈傚鏋滃紑鍑哄彂紲ㄦ椂鏈繚鐣欏鎴峰湴鍧錛岃屽皢鏉ュ張蹇呴』鏇存柊瀹㈡埛淇℃伅錛屽垯鍙兘鏃犳硶紜畾鍙戦佹煇浜涘彂紲ㄧ殑紜垏鍦板潃銆傝繖鍙兘浼氬鑷撮潪甯鎬弗閲嶇殑鍟嗕笟闂銆傚綋鐒訛紝鏈変簺淇℃伅錛堝瀹㈡埛鐨勭數璇濆彿鐮侊級鍙互涓嶄繚瀛樸傚洜姝わ紝搴旇鏈夐夋嫨鍦板喅瀹氶渶瑕佸鍒跺摢浜涙暟鎹?/p>
闇瑕佸鍒舵暟鎹殑鍙︿竴涓緥瀛愭槸濉啓鍙戠エ鐨勬槑緇嗛」銆傛姤浠峰崟閫氬父鐢ㄤ簬鎸戦夊鎴瘋璐殑鍟嗗搧銆傛垜浠彲浠ュ彧瀛樺偍鎶ヤ環鍗?ID錛岃?ID 鎸囧悜鍖呭惈浜у搧璇存槑銆佷環鏍煎拰鍏朵粬璇︾粏淇℃伅鐨勬姤浠峰崟銆備絾鏄紝浜у搧璇存槑鍜屼環鏍間細闅忕潃鏃墮棿鑰屾敼鍙樸傚鏋滀笉灝嗘暟鎹粠鎶ヤ環鍗曞鍒跺埌鏄庣粏琛ㄤ腑錛屽皢鏉ュ垯鏃犳硶鍑嗙‘鍦伴噸鏂版墦鍗板師濮嬪彂紲ㄣ傚鏋滄偍灝氭湭鏀跺埌浠樻錛岄棶棰樺皢闈炲父涓ラ噸銆?/p>
鍥犳錛岃櫧鐒惰鑼冨寲鍙互灝嗙浉鍚岀殑鏁版嵁寰堝ソ鍦頒繚瀛樺湪涓涓湴鏂瑰茍鑳界畝鍖栫紪杈戝伐浣滐紝浣嗘煇浜涙儏鍐典笅鍗翠笉闇瑕佽繖浜涗紭鍔褲傚鏋滀互鍚庣敱浜庡巻鍙插師鍥犻渶瑕佹暟鎹殑蹇収錛屽垯蹇呴』浠庝竴寮濮嬪氨鍦ㄦ暟鎹簱涓璁″ソ銆傚惁鍒欙紝涓鏃︽暟鎹瑕嗙洊灝辨棤娉曞啀鎵懼洖銆?/p>
涓轟簡鎻愰珮鏁堢巼錛屾瘡涓〃閮藉簲璇ユ湁涓涓富閿瓧孌點備富閿瓧孌靛畾涔変簡鍦ㄨ〃涓殑鍞竴鎬э紝騫剁敱绱㈠紩鍦ㄥ叾浠栧瓧孌典腑浣跨敤錛屼互鎻愰珮鎼滅儲鎬ц兘銆備緥濡傦紝瀹㈡埛琛ㄥ彲浠ュ寘鍚負姣忎釜瀹㈡埛瀹氫箟鍞竴緙栧彿鐨?CustomerID 瀛楁銆備負浜嗕究浜庤璁猴紝鍋囧畾琛ㄤ腑鍖呭惈澶氫釜瀛楁錛岃屼笉浠呬粎鏄畝鍗曠殑鍗曚竴琛ㄦ煡鎵撅紙渚嬪鍥藉/鍦板尯鍒楄〃錛夈?/p>
涓鑸潵璇達紝涓婚敭瀛楁搴斿叿鏈夊涓嬬壒寰侊細
閴翠簬涓婅堪鍘熷洜錛屾垜浠緩璁湪澶ч儴鍒嗚〃涓嬌鐢?AutoNumber 瀛楁浣滀負涓婚敭瀛楁銆傞氳繃浣跨敤緇勫悎妗嗗拰闅愯棌鍒楋紝鍙互灝嗗瓧孌電粦瀹氬埌 AutoNumber 瀛楁騫跺皢鍏墮殣钘忥紝浣跨敤鎴鋒棤娉曠湅鍒般?/p>
瀵硅〃榪涜瀹氫箟騫剁悊瑙e悇琛ㄦ槸濡備綍鍏寵仈鐨勪箣鍚庯紝璇風‘淇濇坊鍔犲紩鐢ㄥ畬鏁存ф潵宸╁浐鍚勮〃涔嬮棿鐨勫叧緋匯傝繖鏍峰彲浠ラ伩鍏嶉敊璇湴淇敼閾炬帴瀛楁鑰岀暀涓嬪绔嬬殑璁板綍銆侻icrosoft Jet 鏁版嵁搴撳紩鎿庢敮鎸佸鏉傜殑寮曠敤瀹屾暣鎬э紝鍏佽鐢ㄦ埛榪涜綰ц仈鏇存柊鍜屽垹闄ゃ備竴鑸儏鍐典笅錛屼笉搴斾慨鏀?ID 瀛楁銆傚洜姝わ紝綰ц仈鏇存柊鐢ㄥ緱杈冨皯錛屼絾綰ц仈鍒犻櫎鍗撮潪甯告湁鐢ㄣ?/p>
渚嬪錛屽鏋滃彂紲ㄨ〃涓庤鍗曡〃鐩稿叧鑱旓紝鍏朵腑鐨勪竴寮犲彂紲ㄥ彲鑳芥湁鏃犻檺澶氫釜璁㈠崟錛堟槑緇嗛」錛夛紝騫朵笖姣忎釜璁㈠崟璁板綍鍖呭惈瀹冩墍閾炬帴鐨勫彂紲ㄧ紪鍙鳳紝鍒欏彲浠ヤ嬌鐢ㄧ駭鑱斿垹闄ゆ搷浣滄潵鍒犻櫎鍙戠エ璁板綍錛屽茍鑷姩鍒犻櫎鎵鏈夌浉搴旂殑璁㈠崟璁板綍銆傝繖鏍峰彲浠ラ伩鍏嶅嚭鐜版病鏈夌浉搴斿彂紲ㄨ褰曠殑璁㈠崟璁板綍銆?/p>
鎴戜滑甯屾湜鎮ㄨ兘灝藉揩灝嗚繖浜涙暟鎹簱璁捐姒傚康搴旂敤鍒版偍鐨勫簲鐢ㄧ▼搴忚璁′腑錛屼粠鑰屾渶澶х▼搴﹀湴鍑忓皯闂錛屽噺灝戞湭瀹炵幇姝ょ被璁捐鏃墮渶瑕佽繘琛岀殑淇銆傜鎮ㄥソ榪愩?/p>
瀹佸彲榪涘害鎱簺錛屼篃瑕佷繚璇佹瘡涓幆鑺傜殑璐ㄩ噺錛屼互鍥鵑暱榪滃埄鐩娿?/p>
浜哄憳綆$悊錛岄」鐩鐞嗭紝鍙鎬т笌闇姹傚垎鏋愶紝緋葷粺璁捐錛岀▼搴忚璁★紝嫻嬭瘯銆?/p>
杞歡寮鍙戜腑鐨勪笁縐嶅熀鏈瓥鐣ワ細“澶嶇敤”銆?#8220;鍒嗚屾不涔?#8221;銆?#8220;浼樺寲鈥斺旀姌琛?#8221;銆?/p>
榪涙鏄簲璇ョ殑錛屼絾涓嶈繘姝ュ垯鏄彲鑰葷殑銆?/p>
鍦ㄤ竴涓柊緋葷粺涓紝澶ч儴鍒嗙殑鍐呭鏄垚鐔熺殑錛屽彧鏈夊皬閮ㄥ垎鍐呭鏄垱鏂扮殑銆?/p>
闈㈠悜瀵硅薄錛圤bject Oriented錛夊鑰呯殑鍙eご紱呭氨鏄?#8220;璇蜂笉瑕佸啀鍙戞槑鐩稿悓鐨勮濺杞瓙浜?#8221; 銆?/p>
灝嗗叿鏈変竴瀹氶泦鎴愬害騫跺彲浠ラ噸澶嶄嬌鐢ㄧ殑杞歡緇勬垚鍗曞厓縐頒負杞瀯浠?Software Component)銆?/p>
鍒嗚屾不涔嬫槸鎸囨妸涓涓鏉傜殑闂鍒嗚В鎴愯嫢騫蹭釜綆鍗曠殑闂錛岀劧鍚庨愪釜瑙e喅銆?/p>
浼樺寲宸ヤ綔涓嶆槸鍙湁鍙棤鐨勪簨鎯咃紝鑰屾槸蹇呴』瑕佸仛鐨勪簨鎯呫傚綋浼樺寲宸ヤ綔鎴愪負涓縐嶈矗浠繪椂錛岀▼搴忓憳鎵嶄細涓嶆柇鏀硅繘杞歡涓殑綆楁硶錛屾暟鎹粨鏋勫拰紼嬪簭緇勭粐錛屼粠鑰屾彁楂樿蔣浠惰川閲忋?/p>
涓浜涗笉姝g‘鐨勮蹇碉細
瑙傚康涔嬩竴錛氭垜浠嫢鏈変竴濂楄榪板浣曞紑鍙戣蔣浠剁殑涔︾睄錛屼功涓厖婊′簡鏍囧噯涓庣ず渚嬶紝鍙互甯姪鎴戜滑瑙e喅杞歡寮鍙戜腑閬囧埌鐨勪換浣曢棶棰樸?br>瀹㈣鎯呭喌錛氬ソ鐨勫弬鑰冧功鏃犵枒鑳芥寚瀵兼垜浠殑宸ヤ綔銆傚厖鍒嗗埄鐢ㄤ功綾嶄腑鐨勬柟娉曘佹妧鏈拰鎶宸э紝鍙互鏈夋晥鍦拌В鍐寵蔣浠跺紑鍙戜腑澶ч噺甯歌鐨勯棶棰樸備絾瀹炶返鑰呭茍涓嶈兘鍥犳渚濊禆浜庝功綾嶏紝榪欐槸鍥犱負錛氾紙1錛夌幇瀹炵殑宸ヤ綔涓紝鐢變簬鏉′歡鍗冨樊涓囧埆錛屽嵆浣挎槸鐩稿綋鎴愮啛鐨勮蔣浠跺伐紼嬭鑼冿紝甯稿父涔熸棤娉曞鐢ㄣ傦紙2錛夎蔣浠舵妧鏈棩鏂版湀寮傦紝娌℃湁鍝竴縐嶈蔣浠舵爣鍑嗚兘闀跨洓涓嶈“銆傜浼犵鏂瑰湪鏌愪簺棰嗗煙寰堝悆棣欙紝鑰屽湪杞歡棰嗗煙鍒欐剰鍛崇潃钀藉悗銆?/p>
瑙傚康涔嬩簩錛氭垜浠嫢鏈夋渶濂界殑寮鍙戝伐鍏楓佹渶濂界殑璁$畻鏈猴紝涓瀹氳兘鍋氬嚭浼樼鐨勮蔣浠躲?br>瀹㈣鎯呭喌錛氳壇濂界殑寮鍙戠幆澧冨彧鏄駭鍑烘垚鏋滅殑蹇呰鏉′歡錛岃屼笉鏄厖鍒嗘潯浠躲傚鏋滄嫢鏈夊ソ鐜鐨勬槸涓緹ゅ焊浜猴紝闅句繚浠栦滑涓嶅共鍑哄崡杈曞寳杈欑殑浜嬫儏銆?/p>
瑙傚康涔嬩笁錛氬鏋滄垜浠惤鍚庝簬璁″垝錛屽彲浠ュ鍔犳洿澶氱殑紼嬪簭鍛樻潵瑙e喅銆?br>瀹㈣鎯呭喌錛氳蔣浠跺紑鍙戜笉鍚屼簬浼犵粺鐨勫啘涓氱敓浜э紝浜哄涓嶈寰楀姏閲忓ぇ銆傚鏋滅粰钀藉悗浜庤鍒掔殑欏圭洰澧炴坊鏂版墜錛屽彲鑳戒細鏇村姞寤惰欏圭洰銆傚洜涓猴細錛?錛夋柊鎵嬩細浜х敓寰堝鏂扮殑閿欒錛屼嬌欏圭洰娣蜂貢銆傦紙2錛夎佹墜鍚戞柊鎵嬭В閲婂伐浣滀互鍙婁氦嫻佹濇兂閮借鑺辮垂鏃墮棿錛屼嬌瀹為檯寮鍙戞椂闂存洿灝戙傛墍浠ョ瀛︾殑欏圭洰璁″垝寰堥噸瑕侊紝涓嶅湪涔庤鍒掕兘鎻愬墠澶氬皯錛岄噸鍦ㄦ伆濡傚叾鍒嗐傚鏋滅敤“澶ц穬榪?#8221;鐨勬柟寮忓鍚戝叡浜т富涔夛紝鍙細浜х敓鍊掗鐨勫悗鏋溿?/p>
瑙傚康涔嬪洓錛氭棦鐒墮渶姹傚垎鏋愬緢鍥伴毦錛屼笉綆′笁涓冧簩鍗佷竴鍏堟妸杞歡鍋氫簡鍐嶈錛屽弽姝h蔣浠舵槸鐏墊椿鐨勶紝闅忔椂鍙互淇敼銆?br>瀹㈣鎯呭喌錛氬闇姹傛妸鎻″緱瓚婂噯紜紝杞歡鐨勪慨淇ˉ琛ュ氨瓚婂皯銆傛湁浜涢渶姹傚湪涓寮濮嬫椂寰堥毦紜畾錛屽湪寮鍙戣繃紼嬩腑瑕佷笉鏂湴鍔犱互鏀規銆傝蔣浠朵慨鏀硅秺鏃╀唬浠瘋秺灝戯紝淇敼瓚婃櫄浠d環瓚婂ぇ錛屽氨璺熸不鐥呬竴鏍烽亾鐞嗐?/p>
紼嬪簭璁捐鏄嚜鐢變笌蹇箰鐨勪簨鎯咃紝涓嶈鍙戣獡蹇犱簬鏌愭煇涓諱箟鑰岃嚜瀵葷儲鎭箋?/p>
澶辮觸鐨勬妧宸ч氬父鏄妧淇?
寮鍙戜漢鍛樺簲璇ユ剰璇嗗埌錛氭墍鏈夌殑閿欒閮芥槸涓ラ噸鐨勶紝涓嶅瓨鍦ㄥ井涓嶈凍閬撶殑閿欒銆傝繖鏍鋒墠鑳藉皯鐘敊璇?/p>
綆$悊鐨勭洰鐨勬槸璁╁ぇ瀹朵竴璧鋒妸宸ヤ綔鍋氬ソ錛屽茍涓旇鍚勪漢鑾峰緱鍚勮嚜鐨勫揩涔愬拰婊¤凍銆傚綋涓涓粍緇囪鍑鴻壊鍦伴瀵兼椂錛岄泧鍛樼敋鑷充笉鐭ラ亾浠栦滑宸茶棰嗗銆傚湪欏圭洰瀹屾垚鏃訛紝浠栦滑浼氳嚜璞湴璇達細“鐪嬬湅鎴戜滑閫氳繃鍔姏鍙栧緱鐨勬垚緇╁惂”銆傛墍浠ョ鐞嗚呬笉鑳借佹儲璁扮潃鑷繁鏄竴涓畼錛岃屽簲鏃跺埢鎰忚瘑鍒拌嚜宸辨槸璐d換鐨勪富瑕佹壙鎷呰呫?/p>
鐪熸鐨勭▼搴忓憳閮芥湁濡備笅縐夋э細
涓銆佽瘹瀹?br>紼嬪簭鍛樺湪瀛︿範涓庡伐浣滄湡闂村嚑涔庡ぉ澶╀笌鏈哄櫒鎵撲氦閬擄紝鍘嬫牴灝辨病鏈夊彈嬈洪獥鎴栨楠椾漢鐨勬満浼氥傚嫟濂嬬殑紼嬪簭鍛樺湪璋冭瘯鏃犵┓澶氱殑紼嬪簭Bug鏃訛紝宸茬粡娣辨繁鍦版帴鍙椾簡“璇氬疄”鐨勬暀鑲層備笉璇氬疄鐨勪漢錛屼粬鑲畾涓嶆兂鍋氥佷篃鍋氫笉濂界▼搴忓憳銆?br>浜屻佺畝鍗曗斺斿疄鐢ㄤ富涔?br>鐩墠鍗充嬌鏈鍏堣繘鐨勮綆楁満涔熶笉鍏峰鏅鴻兘錛岀▼搴忓憳鐨勫熀鏈伐浣滃氨鏄妸澶嶆潅鐨勯棶棰樿漿鍖栦負璁$畻鏈鴻兘澶勭悊鐨勭畝鍗曠殑紼嬪簭銆傚鏋滀竴涓棶棰樺鏉傚埌榪炵▼搴忓憳鑷繁閮戒笉鑳界悊瑙o紝浠栧氨鏃犳硶緙栧嚭紼嬪簭璁╂洿絎ㄧ殑璁$畻鏈烘潵澶勭悊銆傛墍浠ョ▼搴忓憳淇″“綆鍗曗斺斿疄鐢?#8221;涓諱箟銆?br>涓夈佺埍鎲庡垎鏄?br>紼嬪簭鍛樺ぇ閮藉枩嬈㈡妧鏈寫鎴橈紝涓嶅枩嬈㈡悶嫻嬭瘯涓庣淮鎶ゃ傞珮姘村鉤鐨勭▼搴忓憳鍠滄涓庨珮姘村鉤鐨勭▼搴忓憳涓璧峰伐浣滐紝鍥犱負浠栦滑鎬?#8220;涓庤嚟媯嬩漿涓嬫錛屾瓚婁笅瓚婅嚟”銆傜▼搴忓憳澶ч兘鍘屾伓鎷夊府緇撴淳銆佽嶆斂娌繪墜鑵曘備笉淇★紝鏁頒竴鏁頒綘璁よ瘑鐨勭▼搴忓憳錛屾湁鍑犱釜鏄厷媧句漢澹紵
鍥涖佸伐浣滃崟璋冧絾涓嶄箯鍛?br>鏈変漢闂紪紼嬪ぇ甯堬細“紼嬪簭璁捐鐨勭湡姝e惈涔夋槸浠涔?錛?#8221;
澶у笀鍥炵瓟璇達細“楗夸簡鐨勬椂鍊欏氨鍚冿紝鍥扮殑鏃跺欏氨鐫★紝鍙鏃舵満鎭板綋灝辮繘琛岀▼搴忚璁°?#8221;
鍏跺疄紼嬪簭鍛樼殑鐢熸椿鍜屽伐浣滃凡铻嶄負涓浣擄紝灝界鍗曡皟鍗翠笉涔忓懗錛岃繕鑳界嫭浜鐙傛湁璇椾負璇侊細
鎴戠紪紼嬩笁鏃?br> 涓よ充笉闂諱漢澹?br> 鍙湁紜洏鍦ㄦ瓕鍞?/p>
緇撹錛氫紭縐鐨勭▼搴忓憳娌℃湁鐞嗙敱涓嶈浜哄枩嬈紝浠栦滑榪滄瘮鎬兓鏉ュ緱鍙埍銆?/p>
寰蔣鍏徃鍦ㄩ夋嫨緇忕悊浜哄憳鏃訛紝鎬繪槸鎶婁粬浠殑鎶鏈煡璇嗗拰榪愮敤鎶鏈幓璧氶挶鐨勮兘鍔涙斁鍦ㄩ浣嶃?/p>
姣旂洊鏇捐繖鏍鋒弿榪拌仾鏄庯細浜鴻仾鏄庝漢涓瀹氬弽搴旀晱鎹鳳紝鍠勪簬鎺ュ彈鏂頒簨鐗┿備粬鑳借繀閫熻繘鍏ヤ竴涓柊棰嗗煙錛岀粰浣犱竴涓ご澶存槸閬撶殑瑙i噴銆備粬鎻愬嚭鐨勯棶棰樺線寰涓閽堣琛銆佸嚮涓瀹熾備粬鑳藉強鏃舵帉鎻℃墍瀛︾煡璇嗭紝騫朵笖鍗氶椈寮鴻錛屼粬鑳芥妸鏈潵璁や負浜掍笉鐩稿共鐨勯鍩熻仈緋誨湪涓璧蜂嬌闂寰楀埌瑙e喅銆備粬瀵屾湁鍒涙柊綺劇涓庡悎浣滅簿紲?#8230;…
濂界殑紼嬪簭緇忕悊搴旇鍏峰浠ヤ笅鍑犱釜鏉′歡錛?br>涓銆佹妧鏈按騫蟲槸紼嬪簭鍛橀槦浼嶄腑鐨勬渶楂樼駭鍒?br>姣忎釜紼嬪簭鍛橀瀛愰噷澶撮兘鏈変竴鑲″偛姘旓紝濡傛灉浣犱笉鑳芥妧鍘嬬兢闆勶紝浠栦滑灝變笉浼氬惉浣犳寚鎸ャ備竴涓妧鏈按騫寵緝宸殑浜鴻浠誨懡涓虹▼搴忕粡鐞嗙湡鏄釜鎮插墽錛屽氨璞′竴涓暐鏈夋潈鍔跨殑澶洃錛岃〃闈笂鏈変漢瀵逛粬鐐瑰ご鍝堣叞錛岃儗鍚庡嵈琚漢閯欒銆?br>浜屻佽兘鍋氭渶澶氫笖鏈闅劇殑宸ヤ綔
紼嬪簭緇忕悊緙栫▼瑕佸揩涓斿ソ銆傚埆浜鴻騫蹭竴澶╃殑媧伙紝浠栧崐澶╁氨鑳藉仛瀹岋紝榪欐牱鎵嶄細鏈夌簿鍔涘幓鎼炵鐞嗐傜▼搴忕粡鐞嗗簲璐熻矗緋葷粺鍒嗘瀽銆佺郴緇熻璁¤繖綾繪渶闅劇殑寮鍙戝伐浣滐紝騫舵寚瀵間笉鍚屾按騫崇殑紼嬪簭鍛樻妸鍚勮嚜鐨勫伐浣滃仛濂姐傚鏋滀漢鎵嬩笉澶燂紝紼嬪簭緇忕悊瑕佽兘鍚屾椂騫插嚑涓漢鐨勬椿銆?br>涓夈佹湁浜烘牸欖呭姏
杞歡寮鍙戞槸鏅哄姏鍒涗綔榪囩▼錛屼綘涓嶈兘鎸囨湜浠呴氳繃鎵ц瑙勭珷鍒跺害鏉ヤ駭鐢熷ソ鐨勪綔鍝併傚緢澶氳蔣浠跺叕鍙哥殑紼嬪簭緇忕悊閮戒笉鏄鐞嗕笓涓氬嚭韜殑錛屼粬浠篃涓嶅彲鑳戒負浜嗘悶濂界鐞嗚屾垚澶╃帺寮勫績鏈恒傛妧鏈嚭鑹茬殑紼嬪簭緇忕悊涓鑸皯鏈夊績鏈笉姝g殑錛屾墍浠ョ鐞嗙殑閲嶇偣搴旀槸“浠ヨ韓浣滃垯”銆?#8220;鍏寰呬漢”銆傚鏋滅▼搴忕粡鐞嗗湪涓婄彮鏃惰洞鍦ㄦ涓婄潯瑙夛紝鍏朵粬紼嬪簭鍛樹篃浼氳繖鏍峰共銆傚鏋滅▼搴忕粡鐞嗗彂鐜版湁涓や釜紼嬪簭鍛樿洞鍦ㄦ満鍣ㄦ梺鐫¤錛屼笉鑳藉彧瀵瑰叾涓竴涓ぇ澹板惣鍙細“浣犱竴緙栫▼灝辨兂鐫¤錛岀湅鐪嬩漢瀹訛紝鍦ㄧ潯瑙夋椂閮芥兂鐫緙栫▼銆?#8221;
濡傛灉綆$悊鑰呮病鏈変漢鏍奸瓍鍔涳紝灝辨病鏈変漢淇℃湇浣狅紝鍥㈤槦灝變笉浼氭湁鍑濊仛鍔涳紝涔屽悎涔嬩紬涓嶅彲鑳藉紑鍙戝嚭浼樼鐨勮蔣浠躲?br>緇撹錛氫竴涓湁媧誨姏鐨勮蔣浠跺叕鍙哥殑鍚勭駭緇忕悊閮戒笉浼氳繖鏍鋒劅鍙癸紝“鍥犱負鎴戝暐涔熶笉浼氬共錛屾墍浠ュ彧濂藉綋棰嗗銆?#8221;
鍦ㄨ蔣浠墮鍩燂紝鎶鏈殑鍔涢噺鏄棤絀風殑錛屼竴澶╀箣鍐呭氨鍙嬌鏁翠釜浜т笟鍙戠敓宸ㄥ彉銆?/p>
濂藉叺濂藉皢閮戒笉鏄ぉ鐢熺殑錛屾槸鍚庡ぉ緇冨嚭鏉ョ殑錛涙棦瑕佸浼氬喎闈欏湴鍒嗘瀽闂錛屽張瑕佸厖婊℃縺鎯呭湴鍘誨伐浣溿?/p>
絳夌駭鍒跺害騫朵笉闄愬埗鑷敱鍜屾皯涓伙紝瀹冭兘璁╄嚜浠ヤ負鑱槑緇濋《銆佽皝涔熶笉鏈嶇殑浜轟滑鎳傚緱濡備綍鍚堜綔涓庡鏂椼傚氨璞℃湁浜嗕竴鏋舵瀛愶紝姣忎釜浜烘墠鏈夋満浼氱埇涓婂澶存憳涓嬮偅鍚戝線宸蹭箙鐨勯噹鑺便傚綋姊瓙鏁f垚涓鍫嗘湪媯嶆椂錛屽彧鍙兘閫犲氨鍑犱釜鍗栫偔緲併?/p>
鎶婃妧鏈按騫沖垎涓哄洓綰э紝絎竴綰ф渶浣庯紝絎洓綰ф渶楂樸傜涓綰ф妧鏈按騫崇殑紼嬪簭鍛樹富瑕佽冩牳緙栫▼鍩烘湰鍔燂紝瑕佹眰璐ㄩ噺鍚堟牸錛堜粬浠富瑕佹潵鑷垰姣曚笟鐨勫ぇ瀛︾敓錛夈傜浜岀駭鎶鏈按騫崇殑紼嬪簭鍛樼紪紼嬭川閲忚楂橈紝鍋氳繃鍑犱釜杞歡欏圭洰錛屾湁鏁板勾鐨勫伐浣滅粡楠岋紝騫惰兘鎸囧鏂版墜鐨勫伐浣溿傜涓夌駭鎶鏈按騫崇殑紼嬪簭鍛樹富瑕佽冩牳緋葷粺鍒嗘瀽涓庣郴緇熻璁$殑鑳藉姏錛岃姹傚叾鎶鏈湁瓚沖鐨勬繁搴﹀拰騫垮害銆傜鍥涚駭鎶鏈按騫崇殑紼嬪簭鍛樻槸鎴愬姛鐨勮蔣浠朵駭鍝佺殑璁捐甯堬紝浠栦笉浠呮妧鏈秴緹わ紝騫朵笖鑳戒嬌鎶鏈漿鍖栦負鏈変環鍊肩殑鍟嗗搧銆?br>鎶婄鐞嗭紙榪欓噷浠呮寚杞歡涓氬姟鐨勭鐞嗭紝涓嶈冭檻琛屾斂浜嬪姟錛夋按騫充篃鍒嗘垚鍥涚駭銆傜闆剁駭鏈浣庯紝絎笁綰ф渶楂樸傜闆剁駭綆$悊姘村鉤鐨勪漢娌℃湁綆$悊鑱屽姟錛屽氨鏄櫘閫氬憳宸ャ傜涓綰х鐞嗘按騫崇殑浜烘槸寮鍙戝皬緇勭殑緇勯暱錛屽彲甯﹂鍑犲悕紼嬪簭鍛樺伐浣溿傜浜岀駭綆$悊姘村鉤鐨勪漢鏄」鐩粡鐞嗐傜涓夌駭綆$悊姘村鉤鐨勪漢鍐沖畾鏌愪簺浜у搧鏄惁瑕佸紑鍙戯紝浠ュ強濡備綍鍘誨崰棰嗗競鍦恒?/p>
褰撴垜浠湪宸ヤ綔涓鍒版尗鎶樻椂錛屽厛瑕佸喎闈欏湴鍒嗘瀽闂錛堜簨鍑烘湁鍥犲摢錛夛紝鎵懼嚭闂鐨勫唴鍥犱笌澶栧洜銆傚唴鍥犳槸鏈涓昏鐨勶紝搴旇浜堜互鏈鍏堣В鍐熾?/p>
“榪蜂俊”鏄偦瀛愮鍒伴獥瀛愮殑緇撴灉銆?/p>
涓轟簡涓嶈鑷繁“鍌?#8221;錛屽杽鑹殑浜轟滑搴旇鐢ㄨ剳瀛愬幓澶氬涓浜涚煡璇嗭紝鍔姏璁╄嚜宸辨潵鎶婃彙鍛借繍錛屼笉瑕佹ョ潃鎶婁竴鐢熸墭緇欐煇涓漢鎴栨煇涓粍緇囥?/p>
涓婂ぉ涓嶅彲鑳借祴浜庝竴涓漢澶鐨勪紭鐐癸紝浠ヨ嚧浜庝粬娌℃湁琛ㄧず璋﹁櫄鐨勪綑鍦般?/p>
鎴戜滑鍦ㄦ眰瀛︽椂鍙兘澶姛鍒╁お鎸戝墧錛屽鑷寸煡璇嗙粨鏋勯潪甯稿崟钖勶紝鍙曞埌浜嗘櫄騫翠篃鎴愪笉浜嗗ぇ鍣ㄣ傚綋紼嬪簭鍛樻搮闀挎妧鏈椂錛岃繕瑕佹椂鍒葷暀鎰忓譏琛ヨ嚜宸卞茍涓嶆搮闀跨殑闈炴妧鏈墠鑳姐傛壃闀胯ˉ鐭墠鑳芥彁楂樼患鍚堢礌璐ㄣ?/p>
浜烘槸鏈鏈変環鍊肩殑璧勬簮銆?/p>
榪涘害瀹夋帓騫朵笉瑙佸緱涓瀹氳絎﹀悎閫昏緫欏哄簭銆傚簲灝藉彲鑳藉湴鍏堝仛鎶鏈毦搴﹂珮鐨勪簨錛屽悗鍋氶毦搴︿綆鐨勪簨銆備篃灝辨槸杈涜嫤鍦ㄥ墠錛岃交鏉懼湪鍚庛?/p>
閲岀▼紕戝氨璞″績鐏電殑鐏錛屼嬌蹇欑鐨勪漢緹や笉娣蜂貢錛屼笉榪峰け鏂瑰悜銆?/p>
浜哄湪鍋氫竴浠朵簨鎯呮椂錛岀敱浜庡瓨鍦ㄥ緢澶氫笉紜畾鐨勫洜绱狅紝涓鑸笉鍙兘100% 鍦拌揪鍒扮洰鏍囥傚亣璁懼鉤甯鎬漢鍋氫簨鑳藉畬鎴愮洰鏍囩殑80%銆傚鏋滄煇涓漢鐨勭洰鏍囨槸100鍒嗭紝閭d箞浠栨渶緇堟垚緇╁彲杈?0鍒嗐傚鏋滄煇涓漢鐨勭洰鏍囧彧鏄?0鍒嗭紝閭d箞浠栨渶緇堟垚緇╁彧鏈?8鍒嗐?/p>
濡傛灉娌℃湁楂樼洰鏍囷紝浜虹殑鍫曡惤灝卞緢蹇傚鏋滄病鏈?#8220;闆剁己闄?#8221;鐨勮川閲忕洰鏍囷紝涔熻緙洪櫡灝變細鎴愬爢銆?/p>
杞歡鏄姝ょ殑鐏墊椿錛屽鏋滄病鏈夎鑼冩潵鍒剁害錛屽氨瀹規槗鍥犳棤搴忕殑鍠滃ソ鑰屽鑷存販娌岋紱浣嗚鑼冨鏋滃お涓ュ瘑浜嗭紝灝變細鎵兼潃紼嬪簭鍛樼敓鏈哄媰鍕冪殑鍒涢犲姏銆?/p>
綆媧佹槸涓縐嶇編!
姣忓綋鎴戜滑娌夎糠浜庣煭鏈熷埄鐩婁笉鎬濊繘鍙栨椂錛屽簲璇ュソ濂藉洖蹇嗙騫存椂浠i偅浜涗紵澶х殑鎶辮礋錛岀粰鑷繁涓浜涙縺鍔便?/p>
“浜哄垎鍥涚被鈥斺斾漢鐗╋紝浜烘墠錛屼漢鎵嬶紝浜烘福銆?#8221;
鎴戞浘寰楀埌寰堝鐐洰鐨勮崳瑾夛紝浣嗗鐢熸椂浠g殑鑽h獕鍙槸涓縐嶉紦鍔憋紝騫朵笉鏄鎴戞墠鑳藉拰浜嬩笟鐨勭‘璁ゃ?/p>
“褰撲綘娌℃硶鎵朵竴涓漢涓婇┈鏃訛紝涔熻搴旇鎷変粬涓嬮┈”------鏉庢晼
涓轟粈涔堣蔣浠剁郴緇熷垎鏋愬憳鐨勫伐璧勮姣旀櫘閫氱▼搴忓憳楂橈紵灝辨槸鍥犱負闇姹傚垎鏋愬洶闅懼槢銆?/p>
濡傛灉鎮ㄥ浼氫簡瀹㈣銆佺瀛︾殑鍙鎬у垎鏋愶紝鍦ㄤ綔鍐崇瓥鏃跺氨瑕佹灉鏂?/p>
緋葷粺璁捐鐨勪紭鍔e湪鏍規湰涓婂喅瀹氫簡杞歡緋葷粺鐨勮川閲忋?/p>
鏂囧涓湁縐戝錛岄煶涔愪腑鏈夋暟瀛︼紝婕敾涓湁鐜頒唬鏁板鐨勬嫇鎵戝銆傛極鐢誨鍙互“鍑犵瑪”灝辨妸涓涓漢鐢誨嚭鏉ワ紝涓嶇鎬庝箞緹庡寲鎴栦笐鍖栵紝灝辨槸媧誨儚銆備負浠涔堬紵鍥犱負閭?#8220;鍑犵瑪”涓嶆槸鍒殑錛岃屾槸鎷撴墤瀛︿腑鐨勭壒寰佷笉鍙橀噺錛岃繖鏄簨鐗╂渶鏈川鐨勪笢瑗褲?nbsp; -------鏉ㄥ彅瀛?/p>
浣撶郴緇撴瀯鏄蔣浠剁郴緇熶腑鏈鏈川鐨勪笢瑗褲?/p>
鍐呰仛錛圕ohesion錛夋槸涓涓ā鍧楀唴閮ㄥ悇鎴愬垎涔嬮棿鐩稿叧鑱旂▼搴︾殑搴﹂噺銆傝﹀悎錛圕oupling錛夋槸妯″潡涔嬮棿渚濊禆紼嬪害鐨勫害閲忋?/p>
鎶鏈繘姝ユ渶蹇篃蹇笉榪囦漢浠鏈涚殑澧為暱銆?/p>
瀵硅薄錛圤bject錛夋槸綾伙紙Class錛夌殑涓涓疄渚嬶紙Instance錛夈?/p>
鍖葷敓鍙互鎶婁粬鐨勯敊璇煁钁湪鍦頒笅浜嗕簨錛屼絾紼嬪簭鍛樹笉鑳姐傛垜浠繀欏昏瀛︿細嫻嬭瘯涓庢敼閿欙紝騫朵笖鎶婃祴璇曚笌鏀歸敊宸ヤ綔鍋氬ソ銆?/p>
嫻嬭瘯騫朵笉浠呮槸涓妧鏈棶棰橈紝鏇存槸涓亴涓氶亾寰烽棶棰樸?/p>
嫻嬭瘯鍙兘璇佹槑緙洪櫡瀛樺湪錛岃屼笉鑳借瘉鏄庣己闄蜂笉瀛樺湪銆?/p>
鏀歸敊鏄釜澶ф偛澶у枩鐨勮繃紼嬶紝涓澶╀箣鍐呭彲浠ヨ浜哄湪鎮蹭激鐨勪綆璋峰拰鍠滄偊鐨勯宄頒箣闂磋穼鑽¤搗浼忋?/p>
紼嬪簭涓殑閿欒鍙湁寮鍙戣呰嚜宸辨墠鑳芥壘鍑哄茍鏀規帀銆傚鏋滃洜鐣忔儳鑰屾嫋寤訛紝浼氳浣犵粓鏃ュ績鎯呬笉瀹氾紝椋熸棤鍛籌紝鐫′笉棣欍傛墍浠ラ暱鐥涗笉濡傜煭鐥涳紝瑕侀泦涓簿鍔涘浠橀敊璇?/p>
緙栫▼澶у笀鏇捐錛?#8220;鍝曠▼搴忓彧鏈変笁琛岄暱錛屾繪湁涓澶╀綘涔熶笉寰椾笉瀵瑰畠緇存姢銆?#8221;
===33===銆婅綆楁満紼嬪簭璁捐鑹烘湳銆嬬涓夌増絎簩鍗峰崐綆楀肩畻娉?br>http://download.csdn.net/down/165775
===34===銆婅綆楁満紼嬪簭璁捐鑹烘湳銆嬬涓夌増絎竴鍗峰熀鏈畻娉?br>http://download.csdn.net/down/168064
===35===璁$畻鏈虹▼搴忚璁¤壓鏈嬬涓夌増絎笁鍗鋒帓搴忓拰鏌ユ壘
http://download.csdn.net/source/165459
鍙﹀鎻愪緵涓涓寘鍚互涓婁笁鍗風殑涓枃鐗?a target=_blank>http://www.gz183.com.cn/downloadpage/download_1438.htm
2006-12-28
erran
瀹炵幇鏂規硶涓錛氳嚜瀹氫箟鎸囬拡鎵懼埌鍑芥暟鍙傛暟鐨勪笅涓涓弬鏁幫紱
// 渚嬪瓙 A 錛?/span>
template<class T>
T umin(T _a, ...)
{
T _r = _a;
T* _p = &_a;
int count = 1;
while ((*_p) != -1)
{
if (_r > (*_p)) _r = (*_p);
cout << "No." << count << ": " << (*_p) << endl;
// 璁$畻絎簩涓弬鏁扮殑鍦板潃錛屽茍涓旇緭鍑鴻鍦板潃
// 娉細 鍦紦錛掍綅錛堬紨瀛楄妭錛夋満鍣ㄤ笂琛ㄧ幇涓烘墍鏈夌殑鍙橀噺鍦板潃閮借兘琚紨鏁撮櫎
// 鐩稿綋浜?/span> _INTSIZEOF(n): ((sizeof(n) + sizeof(int) - 1) & ~(sizeof(int) - 1) )
// 闂鏄敤榪欎釜寮忓瓙鍘葷畻錛屾槸鏃犳硶鐭ラ亾鍝釜鎵嶆槸鏈鍚庡摢涓弬鏁般傛墍浠ョ敤錛?/span> 1 鍋氱粨鏉熷弬鏁般?/span>
_p = (T*)((char *)_p + (sizeof(T) + sizeof(int) - 1) / sizeof(int) * sizeof(int));
count++;
}
return _r;
}
// 璋冪敤錛?/span>
int main(int argc, char* argv[])
{
int a, b, c, d, e;
a = 1; b = 3; c = 2; d = 12; e = 34;
cout << umin<int>( a, b, c, d, e, -1) << endl;
cout << umin<int>(1, 4, 2, 5, 2, -1) << endl;
cout << umin<char>('a', 'b', 'c', 'd', 'e', -1) << endl;
return 0;
}
瀹炵幇鏂規硶浜岋細鍒╃敤 錛★籍錛籌緝錛f彁渚涚殑涓変釜瀹?/span> va_arg錛?/span> va_end, va_start 鏉ュ疄鐜?/span> 錛?/span>
榪欎笁涓畯瀹氫箟鍦ㄥご鏂囦歡 stdarg.h 涓?/span> , 涓昏鏈夛細 va_arg, va_end, va_start 錛?/span> va_list
鍦?/span> _WIN32 涓嬶細
typedef char * va_list;
鍏跺畠鐨勪笁涓?/span> ( 涓嶅悓鐨勫鉤鍙頒細鏈変笉澶竴鏍?/span> )
/* A c at the proper definitions for other platforms */
#define _INTSIZEOF(n) ( (sizeof(n) + sizeof(int) - 1) & ~(sizeof(int) - 1) )
#define va_start(ap,v) ( ap = (va_list)&v + _INTSIZEOF(v) )
#define va_arg(ap,t) ( *(t *)((ap += _INTSIZEOF(t)) - _INTSIZEOF(t)) )
#define va_end(ap) ( ap = (va_list)0 )
鍏跺疄榪欎釜鏂規硶鐨勫疄鐜板師鐞嗗悓鏂規硶涓鏄竴鏍風殑銆?br>
// 渚嬪瓙 B 錛?/span>
template<class T>
T umin(T _a, ...)
{
T _p = _a;
T _r = _a;
int count = 1;
va_list arg_ptr;
va_start(arg_ptr, _a);
while (_p != -1)// 鎵浠ョ敤錛?/span> 1 鍋氱粨鏉熷弬鏁般?/span>
{
if (_r > _p) _r = _p;
cout << "No." << count << ": " << _p << endl;
_p = va_arg(arg_ptr, int);
count++;
}
va_end(arg_ptr);
return _r;
}
// 璋冪敤錛?/span>
int main(int argc, char* argv[])
{
int a, b, c, d, e;
a = 1; b = 3; c = 2; d = 12; e = 34;
cout << umin<int>( a, b, c, d, e, -1) << endl;
cout << umin<int>(1, 4, 2, 5, 2, -1) << endl;
cout << umin<char>('a', 'b', 'c', 'd', 'e', -1) << endl;
return 0;
}
鏂規硶涓鍜屾柟娉曚簩閮戒細閬囧埌鍚屼竴涓棶棰橈細閭e氨鏄病鏈夊姙娉曠煡閬撹鍑芥暟涓竴鍏卞埌搴曟湁澶氬皯涓弬鏁般傚洜涓轟綘 娌℃湁鍔炴硶鍘誨垽鏂埌搴曞摢涓寚閽堟墠鏄渶鍚庣殑鍝釜鍙傛暟鐨勫湴鍧銆?/span>
鎯沖埌涓涓В鍐蟲柟娉曟槸鍦ㄨ鍑芥暟鏈鍚庢坊鍔犱竴涓爣蹇楀弬鏁幫紝浠ユ爣蹇楄鍙傛暟鏄渶鍚庝竴涓弬鏁幫紝浣嗘槸搴旇娉ㄦ剰鐨勬槸錛氫綔涓烘爣蹇楀弬鏁扮殑鏉′歡鏄紝璇ユ爣蹇楁槸涓嶅彲鑳藉嚭鐜板湪姝ゅ墠鐨勫弬鏁拌〃涓傚浠ヤ笂鍑芥暟璋冪敤鐨勬渶鍚庨偅涓弬鏁幫紙錛?/span> 1 錛夈?/span>
鎴戞兂 c 璇█閲岄潰鐨?/span> scanf 鍜?/span> printf 絳夊嚱鏁板簲璇ュ仛榪囦竴浜涚壒孌婂鐞嗐?/span>
鍑芥暟鐨勫弬鏁板湴鍧鏄繛緇殑錛屼絾鏄?/span> 鍙彉鍙傛暟鍒楄〃鎻愪緵浜嗗緢澶х殑鐏墊椿鎬э紝涓斿鍙彉閮ㄥ垎鐨勫弬鏁?span>C璇█緙栬瘧鍣ㄤ笉浼氳繘琛岀被鍨嬫鏌ワ紝鎵浠ョ▼搴忎腑瑕佺壒鍒皬蹇冿紝蹇呴』紜繚鍙傛暟鐨勪紶閫掑拰鎺ュ彈鏄紜殑錛涜屼笖C璇█鐨勫疄鐜頒篃渚濊禆浜庯絻锝愶綍鍜屾搷浣滅郴緇燂紝鎵浠ュ茍涓嶉傜敤浜庢墍鏈夌殑璁$畻鏈哄拰緋葷粺錛岃屼笖闅忔満鍣ㄧ殑涓嶅悓浼氱敱寰堝ぇ鐨勫尯鍒傛墍浠?/span> stdarg.h 瀹氫箟寰堝瀹忋傚錛?/span>
#if !defined(_WIN32) && !defined(_MAC)
#error ERROR: Only Mac or Win32 targets supported!
#endif
l 鍏充簬鍑芥暟鍙傛暟鐨勫湴鍧
鍐欎簡涓涓嬫祴璇曚唬鐮侊紝鏉ユ祴璇曞嚱鏁扮殑鍙傛暟鍦板潃鏄笉鏄繛緇殑銆?/span>
嫻嬭瘯浠g爜濡備笅 :
// 渚嬪瓙 C
#include <iostream>
using namespace std;
template<class T>
T umin(T _a, T _b, T _c, T _d, T _e)
{
// 杈撳嚭鍚勪釜鍙傛暟鐨勫湴鍧
cout << "_a : " << hex << (int*)(&_a) << endl;
cout << "_b : " << hex << (int*)(&_b) << endl;
cout << "_c : " << hex << (int*)(&_c) << endl;
cout << "_d : " << hex << (int*)(&_d) << endl;
cout << "_e : " << hex << (int*)(&_e) << endl;
// 鍙栧緱鏈灝忓?/span>
T _r = _a;
if (_r > _b) _r = _b;
if (_r > _c) _r = _c;
if (_r > _d) _r = _d;
return _r;
}
int main(int argc, char* argv[])
{
int a, b, c, d, e;
a = 1; b = 3; c = 2; d = 12; e = 34;
cout << umin<int>(a, b, c, d, e) << endl;// 璋冪敤涓
cout << umin<int>(1, 4, 2, 5, 2) << endl; // 璋冪敤浜?/span>
cout << umin<char>('a', 'b', 'c', 'd', 'e') << endl;// 璋冪敤涓?/span>
return 0;
}
鍦?/span> VC6.0 涓嬬紪璇戯紝鍙戠幇錛?/span>
瀵逛簬渚嬪瓙 C 錛?/span> 鍦ㄧ紪璇戝櫒涓嶄綔浠諱綍浼樺寲鐨勬椂鍊欙紙鍙婄紪璇戦夐」閫夋嫨 Disable(Debug) 錛夛紝瀵逛簬璋冪敤涓銆佷簩銆佷笁鐨勫弬鏁?/span> _a, _b, _c, _d, _e 閮芥槸榪炵畫鐨勩傚湪閫夋嫨浼樺寲榪愯閫熷害 ( 鍙婄紪璇戦夐」閫夋嫨 Maximize Speed), min 鐨勫弬鏁板湴鍧騫朵笉閮芥槸榪炵畫鐨勩傝岀敤瀵逛簬渚嬪瓙 A 鍜屼緥瀛?/span> B 錛氫袱縐嶆儏鍐甸兘鏄繛緇殑 ( 嫻嬭瘯鐨勬椂鍊欒鏇存敼鐩稿簲鐨勪唬鐮?/span> ).
|
渚?/span> C Disable(Debug) |
渚?/span> C Maximize Speed |
渚?/span> A Maximize Speed |
渚?/span> A Disable(Debug) |
|
_a : 0012FF58 _b : 0012FF5C _c : 0012FF60 _d : 0012FF64 _e : 0012FF68
_a : 0012FF58 _b : 0012FF5C _c : 0012FF60 _d : 0012FF64 _e : 0012FF68
_a : 0012FF58 _b : 0012FF5C _c : 0012FF60 _d : 0012FF64 _e : 0012FF68 |
_a : 0012FF70 _b : 0012FF74 _c : 0012FF78 _d : 0012FF7C _e : 0012FF80
_a : 0012FF70 _b : 0012FF80 _c : 0012FF7C _d : 0012FF78 _e : 0012FF74
_a : 0012FF58 _b : 0012FF5C _c : 0012FF60 _d : 0012FF64 _e : 0012FF68 |
No.1: 0012FF50 No.2: 0012FF54 No.3: 0012FF58 No.4: 0012FF5C No.5: 0012FF60
No.1: 0012FF50 No.2: 0012FF54 No.3: 0012FF58 No.4: 0012FF5C No.5: 0012FF60
No.1: 0012FF50 No.2: 0012FF54 No.3: 0012FF58 No.4: 0012FF5C No.5: 0012FF60 |
No.1: 0012FF50 No.2: 0012FF54 No.3: 0012FF58 No.4: 0012FF5C No.5: 0012FF60
No.1: 0012FF50 No.2: 0012FF54 No.3: 0012FF58 No.4: 0012FF5C No.5: 0012FF60
No.1: 0012FF50 No.2: 0012FF54 No.3: 0012FF58 No.4: 0012FF5C No.5: 0012FF60 |
浠庝紡緹茬敾鍗﹀埌銆婅繛灞便嬫槗鐨勫嚭鐜幫紝鍗蟲湁璞$殑瑙傚康錛屾暟宸插紑濮嬭悓鑺斤紝鏁頒笌絳仈緋誨嵆鏈夌鏁幫紝涓昏鐢ㄤ簬鍗犲崪銆傛槬縐嬫椂鏈燂紝“璞?/span>”鍜?/span>“鏁?/span>”鍚屾椂鍑虹幇鍦ㄣ婄瀛?/span>·涓冩硶銆嬬瘒涓細“鍒欙紝璞★紝娉曪紝鍖栵紝鍐沖錛屽績鏈紝璁℃暟銆?/span>”浣嗚薄鏁板湪鏄ョ鍒濇湡浠嶆槸涓や釜鏉炬暎鑱旂郴鐨勬蹇點傚埌鏄ョ鏈湡錛岃薄涓庢暟鐨勬蹇佃仈緋繪瘮杈冨瘑鍒囷紝鍦ㄣ婂懆鏄?/span>·緋昏緸浼犮嬩腑鎻愬埌“鏋佹暟瀹氳薄”錛屽凡鍒濇鍑虹幇璞℃暟鐞嗚銆傝繖鏃訛紝銆婄郴杈炰紶銆嬩腑鍙垵姝ヨ鍙婅薄鏁扮殑鍐呭湪鑱旂郴錛屽茍鏈緇嗚皥鍒拌薄鏁扮悊璁虹殑紼嬪簭銆傚瓟瀛愬湪鏁欎功鏃跺叚鑹烘暀瀛﹀ぇ綰?/span>“紺間箰灝勫盡涔︽暟”涓殑鏁幫紝鏄綋鏃舵棩甯哥敤鐨勫疄鐢ㄦ暟銆傚埌瀛熷瓙鏃朵唬錛屽嵆鍒版垬鍥芥湯鏈燂紝璞℃暟鐞嗚涔冨ぇ澶囷紝鍘嗘硶鎺ㄦ鏈篃鎴愮啛銆傚綋鏃剁殑涓嶅皯瀛﹁呬細鎺ㄦ鏈紝鑰屾槦鍛藉涓哄瓱銆佽崁浜屼綅澶у剴鎵涓嶉嬌銆傚瓱瀛愭墍璇寸殑“鑻熸眰鍏舵晠錛屽崈宀佷箣鏃ヨ嚦鍙潗鑰岃嚧涔?/span>”錛屾槸璋堢殑鍘嗘硶鎺ㄦ鏈紱鑽瀛愯錛?/span>“鍠勪負鏄撹呬笉鍗?/span>”銆傝繖鏃訛紝鍦ㄥ彜綆楃粡綆楁硶鍜屽巻娉曟帹姝ユ湳涔嬪錛屽凡鏈夌粡鍏告湳鏁板“涓夊紡”絳夌殑鍑虹幇鍜屽簲鐢ㄣ傝繖涓ょ被鏁扮殑綆楁硶錛屽湪鍚庢眽寰愬渤銆婃暟鏈閬椼嬩腑鏈夋彁瑕佸紡鐨勬鎷葷粨銆傚鍏朵腑鎻愬嚭鐨?/span>14縐嶇畻娉曪紝娌℃湁鏄庣‘鎸囧嚭浣曡呬負鍘嗘硶鎺ㄦ鏈畻娉曪紝浣曡呬負鏈暟綆楁硶紼嬪簭銆備害鍙兘鏄患鍚堢殑銆佹祽鍏冧竴浣撶殑綆楁硶紼嬪簭銆傛葷殑鐪嬫潵錛屾湁鏁板繀鏈夌畻錛屾湁綆楀繀鏈夋硶銆傚艦鎴愬彜綆楃粡綆楁硶鍜屾湳鏁扮畻娉曟槸寰堣嚜鐒剁殑銆傚湪鍙や唬鍙兘鏈変簰琛ョ殑瓚嬪娍銆傘婂懆鏄撱嬪ぇ琛嶄箣鏁板緢鍙兘涓庡彜鍏巻鎵鐢ㄧ殑綆楁硶紼嬪簭鏈夊叧銆傚攼浠e紶閬傜殑澶ц鍘嗕互鍙婂畫縐︿節闊躲婃暟涔︿節绔犮嬪潎娑夊強澶ц綆楁硶錛岃岀Е姹夋椂鏈熺殑銆婁節绔犳暟瀛︺嬩腑鍒欏澶ц綆楁硶閬胯屼笉璋堛傝繖鍙兘鏄敱浜庡彜浠eぇ鍎掍害鏄澶ц涔嬫暟甯︽湁紲炵鍐呭錛屼笉鏁笌姝h鐨勫簲鐢ㄦ暟瀛︾畻娉曠浉鎻愬茍璁恒傚疄闄呬笂錛屽ぇ琛嶄箣鏁板彧鏄竴縐嶇幇浠f墍璇寸殑“涓嶅畾鍒嗘瀽”鑰屽凡!闃厓璁烘洶錛?/span>“鎺ㄦ涔嬫硶鑷沖ぇ琛嶅鐭o紝……鍚庢潵綆楅犺呮湭鑳藉強涔熴傜劧鎺ㄦ湰鏄撹薄錛岀粓涓哄倕鍚堬紝鏄斾漢璋撲竴琛岀獪鍏ヤ簬銆婃槗銆嬩互鐪╀紬錛屾槸涔冨崈鍙ゅ畾璁轟篃”銆傦薊1錛界敱姝ゅ彲鐭ワ紝灝辯畻娉曡岃錛屾帹姝ユ湳鑷負鎺ㄦ鏈紝鏁版湳鑷負鏁版湳錛屽悇鎴愮郴緇燂紝涓嶇浉娑変篃銆傜劧鑰岋紝榪欏茍涓嶆剰鍛崇潃鏁版湳綆楁硶紼嬪簭涓棤鍚堢悊鍐呭銆傝嫳浜烘潕綰︾憻甯告彁鍒版湳鏁?/span>“鍐呯畻”寰堟湁鐢ㄣ傦薊2錛戒絾鏈綔娣卞叆鎺㈢┒銆傚畫縐︿節闊躲婃暟涔︿節绔犮嬪簭涓鍐呭綆楋紝娑夊強緇忓吀鏈暟涓夊紡錛屽叾璁洪姝o細“浠婃暟鏈箣涔﹀皻涓夊崄浣欏錛屽ぉ璞″巻搴︼紝璋撲箣緙鏈傚お涔欏,鐢茶皳涔嬩笁寮忥紝鐨嗘洶鍐呯畻錛岃█鍏剁涔熴備節绔犳墍杞藉嵆鍛ㄥ畼涔濇暟錛岀郴浜庢柟鍦嗚呬負闀氭湳錛岀殕鏇板綆楋紝瀵瑰唴鑰岃█涔熴傚叾鐢ㄧ浉閫氾紝涓嶅彲姝т簩”銆傦薊3錛戒互涓婃墍璁哄潎娑夊強鏁板瓧淇℃伅銆?/span>顎?/span>
21涓栫邯宸叉垚涓轟俊鎭椂浠o紝淇℃伅涓庤薄鏁版伅鎭浉閫氥傛晠銆婄郴杈炰紶銆嬭薄鏁版濈淮搴斿綋鍦ㄤ粖鍚庡ぇ鏀懼厜鑺掞紝涓庤タ鏂硅綆楁満鏂囧寲鎴愬氨鎼烘墜騫惰繘錛岄愭笎铻嶆眹鎴愪竴浣撱傘婂懆鏄?/span>·緋昏緸浼犮?/span>“澶╁湴涔嬪ぇ寰鋒洶鐢?/span>”錛?/span>“鐢熺敓涔嬭皳銆婃槗銆?/span>”錛屽己璋冪敓鍛芥紨鍖栨濇兂錛涘崷鐖葷殑璁劇疆涓婇噰鍙栦咕鍧ゅ叚瀛愮殑褰㈠紡錛岃繖閮戒笌瑗挎柟鏂拌繎鍏磋搗鐨勯仐浼犵畻娉曠殑綺劇涓庡叿浣撹綆楁楠ゅ唴瀹圭浉榪戙?/span>顎?/span>
浜屻侀仐浼犲瘑鐮佷笌璞℃暟顎?/span>
榪戜簺騫存潵錛屽浗鍐呭瀵逛簬縐戝鏄撴劅鍏磋叮鐨勫鑰咃紝鏃犱笉閲嶈鐢熺墿閬椾紶瀵嗙爜鐨勭爺絀舵垚鏋滐紝騫跺睍寮銆婂懆鏄撱嬭薄鏁頒笌閬椾紶瀵嗙爜緇嗛儴緇撴瀯瀵規瘮鐨勬帰璁ㄣ傝繖鏂歸潰錛屽挨浠ュ凡鏁呰憲鍚嶇瀛︽槗瀛﹀娼橀洦寤鋒暀鎺堢殑鐮旂┒鍏鋒湁浠h〃鎬с傛綐鍏堢敓鍗氬彜閫氫粖錛屾棦娣遍捇榪囪薄鏁扮悊璁猴紝鍙堢啛鎮夊垎瀛愮敓鐗╁鍜岄仐浼犲瘑鐮佺殑鐢熺墿鍖栧鍚箟錛屼粬鍦?/span>“縐戝鏄?/span>”涓鏂囦腑浠?/span>DNA錛堣劚姘ф牳緋栨牳閰革級鍜?/span>RNA錛堟牳緋栨牳閰革級涓轟緥錛屾潵鑰冨療鍏跺垎瀛愮粨鏋勭殑鍙樺寲鎯呭喌錛屽強鍏跺寲瀛﹂敭鐨?/span>“璞℃暟”銆傦薊4錛?/span>顎?/span>璁ㄨ緇撴灉濡備笅琛ㄦ墍紺猴紙鏆傜暐錛夛細
涓轟簡浣胯鑰呮繁鍏ョ悊瑙h薄鏁頒笌鐢熺墿閬椾紶瀛﹀強閬椾紶瀵嗙爜鐨勫搴斿叧緋伙紝鏈夊繀瑕佸皢鏈夊叧縐戝鍚嶈瘝鍔犱互鎵艱鐨勮В閲婏細顎?/span>
1銆侀仐浼犲瘑鐮侊細 DNA錛堣劚姘ф牳緋栨牳閰革級涓牳鑻烽吀欏哄簭鍜岃泲鐧借川涓殑姘ㄥ熀閰擱『搴忎箣闂寸殑鍏崇郴縐頒負閬椾紶瀵嗙爜銆傞仐浼犲瘑鐮佹槸鐢辯⒈鍩虹殑涓夎仈浣擄紙鐩稿綋浜庛婃槗緇忋嬪叓鍗︾殑涓夌埢錛夛紝鍙湪DNA鍒嗗瓙涓婇『搴忚鍑猴紝涓斾簰涓嶉噸榪級銆?/span>DNA鏄竴鍒囩敓鍛藉艦寮忕殑鏅亶閬椾紶鐗╄川銆?/span>DNA鏈夊洓縐嶄笉鍚岀殑紕卞熀錛氫袱縐嶅槍鍛わ紝鍗寵吅鍢屽懁鍜岄笩鍢屽懁錛屼互鍙婁袱縐嶅槯鍟訛紝鍗寵兏鑵哄槯鍟跺拰鑳炲槯鍟躲?/span>DNA鐨勭粨鏋勫憟鍙岃灪鏃嬬粨鏋勫艦寮忋?/span>顎?/span>
鐢變笁鑱斾綋瀵嗙爜閲嶈凱錛屽彲褰㈡垚涓庡叚鍗佸洓鍗︾浉瀵瑰簲鐨勭鍙風郴緇熴傝繖騫墮潪鍑鴻嚜鍋剁劧錛岃屾槸鑷劧鐗╃殑鍙戠敓鍜屾紨鍖栧悎涔庢槗鏁扮殑鑷粍緇囦綔鐢ㄩ犳垚鐨勩傛綐闆ㄥ環鏁欐巿鍦ㄣ婂懆鏄撶旱妯綍銆嬭鏂囦腑宸蹭綔浜嗚緇嗙殑璞℃暟璁鴻堪錛屽彲浠ュ弬鐪嬨?/span>顎?/span>
2銆佹牳鑻烽吀錛氫笂榪板洓縐嶇⒈鍩轟箣涓涓庤劚姘ф牳緋栫粨鍚堬紝鍙綔鏍歌嫹銆傛牳鑻風殑紓烽吀閰鐢熺墿縐頒箣涓烘牳鑻烽吀銆?/span>DNA鍒嗗瓙鏄敱鏍歌嫹閰告瀯鎴愮殑錛岃澶氬崟鍏冩帴鍦ㄤ竴璧峰氨褰㈡垚浜嗗鏍歌嫹閰擱暱閾俱?/span>顎?/span>
3銆佹牳緋栨牳閰革紙RNA錛夛細RNA鍜?/span>DNA涓鏍鳳紝閮芥槸闀塊摼鍒嗗瓙錛屼害鏄敱閲嶅鐨勬牳鑻烽吀鍗曞厓緇勬垚銆?/span>RNA鐨勬瀯鎴愬崟鍏冩湁涓ょ偣涓?/span>DNA涓嶅悓銆傞鍏堬紝RNA鐨勭硸緇勫垎涓嶆槸鑴辨哀鏍哥硸錛岃屾槸鏍哥硸銆傚叾嬈★紝鍥涚紕卞熀涓櫧鐒舵湁涓夌錛屽嵆鑵哄槍鍛ゃ侀笩鍢屽懁鍜岃優鍢у暥錛屽湪RNA鍜?/span>DNA涓兘涓鏍楓備絾絎洓縐嶏紝鍗寵兏鑵哄槯鍟訛紝鍦?/span>RNA涓負灝垮槯鍟舵墍浠f浛錛屽畠灝戜簡涓涓敳鍩恒傚湪涓夌RNA綾誨瀷鐨勪竴縐嶇被鍨嬩腑錛岃繕鍋跺皵鍑虹幇鍒殑紕卞熀銆?/span>顎?/span>
4銆佷俊浣挎牳緋栨牳閰革紙mRNA錛夛細銆?/span>HTSS銆?/span>mRNA鍦ㄦ妸瀵嗙爜緲昏瘧鎴愪笓涓鎬ц泲鐧借川鏃惰搗妯℃澘浣滅敤錛屽茍涓旇兘鎶婇仐浼犲瘑鐮佺殑淇℃伅浠庣粏鑳炴牳鐨?/span>DNA榪愰佸埌緇嗚優璐紝浠ヤ究淇冭繘鍚堟垚铔嬬櫧璐ㄧ殑浣滅敤銆傛惡甯︾潃鎵闇瑕佺殑淇℃伅錛屼互鍐沖畾涓涓泲鐧借川鍒嗗瓙鐨勬暣涓鑲介摼鐨?/span>mRNA鐨勯暱搴︼紝縐頒負浣滅敤瀛愩傛煇浜?/span>mRNA鍒嗗瓙鎼哄甫鐫涓嶄粎鍚堟垚涓涓泲鐧借川鍒嗗瓙鐨勪俊鎭紝榪欐牱鐨?/span>mRNA縐頒負澶氫綔鐢ㄥ瓙銆傚湪鍚堟垚榪囩▼涓紝褰撳瘑鐮佺敱DNA杞綍鍒?/span>mRNA涓婃椂錛屽悗鑰呭嵆紱誨紑緇嗚優鏍革紝閫氳繃鏍歌啘榪涘埌緇嗚優璐ㄤ腑銆傚湪緇嗚優璐ㄤ腑瀹冪Щ鍔ㄥ埌铔嬬櫧璐ㄥ悎鎴愮殑鍦烘墍錛屽嵆杞Щ鍒版牳緋栨牳铔嬬櫧浣撳銆傛牳緋栨牳铔嬬櫧浣撶敱DNA鍜岃泲鐧借川緇勬垚銆?/span>顎?/span>
5銆佽漿縐繪牳緋栨牳閰革紙tRNA錛夛細銆?/span>HTSS銆楀叾浣滅敤鏄妸緇嗚優璐ㄤ腑鐨勬皚鍩洪吀杞Щ鍒版牳緋栨牳铔嬬櫧浣撲笂铔嬬櫧璐ㄥ悎鎴愮殑鍦烘墍銆傚洜姝わ紝tRNA鏄湪鐗瑰畾姘ㄥ熀閰鎬笌瀵瑰畠緙栫爜鐨?/span>mRNA涓夎仈浣撲箣闂磋搗濯掍粙鐗╂垨杞帴鍒嗗瓙鐨勪綔鐢ㄣ傛瘡涓皚鍩洪吀閮芥湁鍏朵簰涓嶇浉鍚岀殑銆佷笓涓鐨?/span>tRNA鍒嗗瓙銆傛瘡縐?/span>tRNA鍚湁澶х害80涓牳鑻烽吀銆?/span>顎?/span>
6銆佸弽瀵嗙爜瀛愶細tRNA鍒嗗瓙涓婁笌mRNA榪炴帴鐨勪竴瀹氶儴浣嶆槸涓涓敱涓変釜紕卞熀緇勬垚鐨勯『搴忥紝涓?/span>mRNA涓婄殑瀵嗙爜瀛愪簰琛ワ紝縐頒負鍙嶅瘑鐮佸瓙銆?/span>顎?/span>
7銆佺畝騫跺瘑鐮侊細璇曢獙琛ㄦ槑錛岃櫧鐒朵換浣曠壒瀹氭皚鍩洪吀瀵嗙爜瀛愮殑寮濮嬩袱涓瓧姣嶆繪槸涓嶅彉錛岀劧鑰岀涓変釜瀛楁瘝鏈夋椂鍗翠笉鍚屻備緥濡傦紝緙栫爜涓濇皚閰哥殑涓嶄粎鏄?/span>AGU錛屼篃鏈?/span>AGC銆傚洜姝わ紝Crick 1966騫存彁鍑?/span>“鎽囨憜”鍋囪錛岃繖縐嶆憞鎽嗗湪浜庣涓夊紕卞熀涔嬮棿鐨勯厤鍚堜笌鍓嶄袱瀵圭⒈鍩虹殑綺劇‘瑕佹眰鐩告瘮澶氬皯鏈変簺鏉懼紱銆傚嚒鏄悓涓涓皚鍩洪吀鏈変笉鍚岀殑瀵嗙爜鑰咃紝榪欑瀵嗙爜縐頒負綆騫跺瘑鐮併?/span>顎?/span>
涓夈侀仐浼犵畻娉曟瑕?/span>顎?/span>
鍦ㄩ仐浼犵畻娉曚腑錛屽彲浠ュ皢妯″瀷鐨勪竴涓弬鏁拌〃紺轟負涓涓簩榪涘埗鏁扮爜錛屽叏閮ㄥ弬鏁扮敤璁稿涓茶仈鍦ㄤ竴璧風殑浜岃繘鍒舵暟鐮佺粍鎴愮殑瀛楃涓?/span>(綾諱技涓涓煋鑹蹭綋)浠h〃銆備粠涓緇勫垵濮嬫ā鍨嬶紝鍗充竴浜涘叿鏈変笉鍚屾煋鑹蹭綋鐨勪釜浣撶粍鎴愮殑縐嶇兢寮濮嬨傦薊5錛?/span>顎夘?/span>
閬椾紶綆楁硶鐨勫熀鏈濇兂姝f槸鍩轟簬妯′豢鐢熺墿鐣岀殑閬椾紶榪囩▼銆傚畠鎶婇棶棰樼殑鍙傛暟鐢ㄥ熀鍥犱唬琛紝鎶婇棶棰樼殑瑙g敤鏌撹壊浣撲唬琛?/span>(鍦ㄨ綆楁満閲屼負瀛楃涓?/span>)錛屼粠鑰屽緱鍒頒竴涓敱鍏鋒湁涓嶅悓鏌撹壊浣撶殑涓綋緇勬垚鐨勭兢浣撱傝繖涓兢浣撳湪闂鐗瑰畾鐨勭幆澧冮噷鐢熷瓨绔炰簤錛岄傝呮湁鏈濂界殑鏈轟細鐢熷瓨鍜屼駭鐢熷悗浠c傚悗浠i殢鏈哄寲鍦扮戶鎵夸簡鐖朵唬鐨勬渶濂界壒寰侊紝騫朵篃鍦ㄧ敓瀛樼幆澧冪殑鎺у埗鏀厤涓嬬戶緇繖涓榪囩▼銆傜兢浣撶殑鏌撹壊浣撻兘灝嗛愭笎閫傚簲鐜錛屼笉鏂繘鍖栵紝鏈鍚庢敹鏁涘埌涓鏃忔渶閫傚簲鐜鐨勭被浼間釜浣擄紝鍗沖緱鍒伴棶棰樻渶浼樼殑瑙c傚煎緱娉ㄦ剰鐨勪竴鐐規槸錛岀幇鍦ㄧ殑閬椾紶綆楁硶鏄彈鐢熺墿榪涘寲璁哄璇寸殑鍚彂鎻愬嚭鐨勶紝榪欑瀛﹁瀵規垜浠敤璁$畻鏈鴻В鍐沖鏉傞棶棰樺緢鏈夌敤錛岃屽畠鏈韓鏄惁瀹屽叏姝g‘騫朵笉閲嶈(鐩墠鐢熺墿鐣屽姝ゅ璇村皻鏈変簤璁?/span>)銆?/span>顎?/span>
閬椾紶綆楁硶鐨勫熀紜鎬濇兂鏄湪鏈笘綰?/span>50騫翠唬鍒濓紝鐢變簬涓浜涚敓鐗╁瀹跺皾璇曠敤璁$畻鏈烘ā鎷熺敓鐗╃郴緇熸紨鍖栨椂鑰屾彁鍑虹殑銆?/span>顎?/span>
閬椾紶綆楁硶鏄ā鎷熺敓鐗╅氳繃鍩哄洜鐨勯仐浼犲拰鍙樺紓錛屾湁鏁堝湴杈懼埌涓縐嶇ǔ瀹氱殑浼樺寲鐘舵佺殑綣佹畺鍜岄夋嫨鐨勮繃紼嬶紝浠庤屽緩绔嬬殑涓縐嶇畝鍗曡屽張鏈夋晥鐨勬悳绱㈡柟娉曘傚畠榪愮敤闅忔満鑰岄潪紜畾鎬х殑瑙勫垯瀵逛竴鏃忚岄潪涓涓偣榪涜鍏ㄥ眬鑰岄潪灞閮ㄥ湴鎼滅儲錛屽畠浠呭埄鐢ㄧ洰鏍囧嚱鏁拌屼笉瑕佹眰鍏跺鏁版垨鍏跺畠闄勫姞闄愬埗錛屽畠铏界劧鍦ㄧ壒瀹氶棶棰樹笂鏁堢巼涔熻涓嶆槸鏈楂橈紝浣嗘晥鐜囪繙楂樹簬浼犵粺闅忔満綆楁硶錛屾槸涓縐嶆櫘閬嶉傜敤浜庡悇縐嶉棶棰樼殑鏈夋晥鏂規硶銆傞仐浼犵畻娉曠殑涓昏鎬濊礬鏈夛細顎?/span>
1銆佺箒孌?/span>(reproduction)錛氱箒孌栨槸鏍規嵁鐜版湁鍚勪釜浣撶殑鐩爣鍑芥暟鍊鹼紝紜畾鍏剁敓瀛樻鐜囷紝妯℃嫙鐢熺墿鐣岀殑鑷劧閫夋嫨錛屽姡鑰呮窐姹幫紝閫傝呯敓瀛樸傚湪閬椾紶綆楁硶涓紝鎴戜滑浜轟負鍦頒繚鎸佺緹ゅ寘鍚殑涓綋鎬繪暟涓嶅彉銆傛瘮杈冧紭縐鐨勪釜浣?/span>(妯″瀷)鏈夎緝澶х殑鐢熷瓨姒傜巼錛屽茍鍙兘綣佽錛屾瘮杈冨樊鐨勪釜浣?/span>(妯″瀷)鍙兘浼氭窐姹般傝繖鏍蜂駭鐢熺殑涓嬩竴浠g殑涓綋錛屼竴鑸兘鍏鋒湁杈冨ぇ鐩爣鍑芥暟鍊鹼紝鍥犺屾湁杈冨ぇ鐨勭敓瀛樻鐜囥?/span>
2銆佷氦閰?/span>(crossover)錛氫粠縐嶇兢涓殢鏈哄湴閫夋嫨涓や袱涓緇勭殑鍙屼翰錛屽垎鍒殢鏈哄湴浜ゆ崲閮ㄥ垎鏌撹壊浣擄紝鍚勮嚜浜х敓涓や釜鏂版煋鑹蹭綋銆?/span>顎?/span>
3銆佸彉寮?/span>(mutation)錛氭煋鑹蹭綋鎸変竴瀹氭鐜?/span>(涓鑸緢灝?/span>)鍙殢鏈哄湴浜х敓鍙樺紓銆?/span>顎?/span>
閬椾紶綆楁硶鑳藉瑙e喅鐨勯棶棰樹笉浠呴檺浜庢渶浼樺寲闂錛屼絾鏃犺鍝闂錛岄兘瑕佽В鍐充袱涓叧閿棶棰橈細(1)蹇呴』鑳藉皢闂鐨勮В絳旂敤涓緇勪簩榪涘埗鏁扮爜琛ㄧず錛屽嵆寤虹珛瑙g瓟涓庝簩榪涘埗鏁扮爜闂寸殑鏄犲皠(mapping)鍏崇郴銆?/span>(2)瀹氫箟涓縐嶅鏈浣寵В鐨勫畾閲忛噺搴︼紝鍗抽傚害鍑芥暟銆?/span>顎?/span>
鍥涖佽嚜鐒?/span>DNA“璁$畻鏈?/span>”鐨?/span>“紜歡”涓庤蔣浠?/span>鈥斺?/span>璞°佹暟顎?/span>
綆楃洏鐢辨湪妗嗐佺媯嶃佺畻鐝犳瀯鎴愶紝鍏跺悇綾葷彔綆楀彛璇鍜岃鍒欐槸璁$畻紼嬪簭銆傜畻鐩樺緩绔嬩簡涓涓彔綆楃┖闂達紱鏄撶畻鍗︾埢錛屾澀杈涙枊縐頒箣涓哄崷鏉愩佺埢鏉愶紝鐩稿綋浜庢槗綆楃‖浠訛紝銆婄郴杈炰紶銆嬫墍璁?/span>“鍏崷鎴愬垪錛岃薄鍦ㄥ叾涓煟”錛屾槸鍏崷絀洪棿銆傘婂簭鍗︺嬫墍璁虹浉褰撲簬瀹忚紼嬪簭銆?/span>“钃嶄箣寰峰渾鑰岀錛屽崷涔嬪痙鏂逛互鏅?/span>”絳夋湁鍏沖崷鐖誨姛鑳界殑璁鴻堪錛岀浉褰撲簬鍩哄洜鏌撹壊浣撴暟鐨勪綔鐢ㄣ?/span>顎?/span>
閬椾紶綆楁硶鎵鍙栨硶鐨勮嚜鐒?/span>DNA鐨?/span>“紜歡”(璞?/span>)緇忕敓鐗╁寲瀛﹀澶氬勾榪涜鐨?/span>DNA緇撴瀯鍒嗘瀽鐨勭爺絀訛紝鐩稿綋 鍥?/span>1 DNA鍥涚紕卞熀緋栫幆緋葷粺鍙婂叾鍘熷瓙鏍囧噯鎸囨暟錛堟殏鐣ワ級浜庨珮鍒嗗瓙緇撴瀯寮忔墍琛ㄧず鐨勫師瀛愮粨鏋勩傦薊6錛藉叿浣撳寲鍒?/span>DNA錛屽垯鏄弻閾捐灪鏃嬬粨鏋勭殑褰㈣薄銆?/span>DNA鐨勫弬鏁版湁鍖栧杈圭晫璺濈(浠ユ棆杞搴﹁〃紺?/span>)錛岃竟鐣岃(涓ょ浉閭誨寲瀛﹁竟鐣岄棿鐨勫す瑙?/span>)錛屾壄鍔涜(DNA铻烘棆鐨勬壄杞搴︼紝0锝?/span>360°)銆傜劧鑰岋紝鍓嶄簩鑰呮槸甯擱噺銆傚彧鏈夋壄鍔涜鏄椂甯稿彉鍔ㄧ殑鍙橀噺銆傞仐浼犵畻娉曚富瑕佸埄鐢ㄦ壄鍔涜鍙橀噺銆備粖灝嗛仐浼犵畻娉曟墍鍙栨硶鐨勮薄鏁?/span>鈥斺?/span>紕卞熀緇撴瀯寮忓強DNA涓醬(鍙〃紺轟竴涓牳鑻烽吀鍗曚綅)鎵姏瑙掑垎甯冪瓑鍙欒堪濡備笅錛?/span>顎?/span>
鍥?/span>1琛ㄧずDNA鍥涗釜紕卞熀緋葷粺鍙婂叾鍘熷瓙鏍囧噯鎸囨暟錛屽浘2錛堟殏鐣ワ級涓婇儴琛ㄧず鍩烘湰鐜紝鍏舵壄鍔涜涓?/span>χ顎宨錛屽叾涓嬭〃紺虹硸鐜紝鍏舵壄鍔涜涓?/span>P(i)錛?/span>γ顎宯(i)錛岀⒈鍩虹郴緇熺殑鍏ㄨ繃紼嬫槸鑷敱鐨勶紝鍘熷垯涓婃部鍗曚釜鍖栧杈圭晫“鎽嗗姩”錛屽氨榪欐牱涓?/span>DNA緋栫幆榪炴帴璧鋒潵銆傛剰鍗沖熀鏈幆涓庣硸鐜部鍏叡杈圭晫鑰?/span>“鎽嗗姩”銆傝繖縐嶆憜鍔ㄥ彲鑳芥槸鍦ㄤ紶閫掍俊鎭傛部鍖栧鐣岄潰鍦ㄧ硸鐜笂鐨勫唴寰幆鎵姏瑙?/span>χ鍦ㄧ┖闂翠笂鍙楀埌鍒剁害錛屽洜涓虹硸鐜渶瑕侀棴鍚堛傚凡鍙戠幇姣忎竴鏍歌嫹閰稿崟浣嶉兘鏈夊叓涓富瑕佺粨鏋勫弬鏁幫細χ錛?/span>ν顎宮錛?/span>P錛?/span>α錛?/span>β錛?/span>γ錛?/span>ε錛?/span>ζ(2)錛屻栵吉錛般楄繖鍏釜鍙傛暟閮介檺鍒跺湪涓涓湁闄愮殑璺濈鍐咃紝鍘熷垯涓婏紝鎵姏瑙?/span>α錛?/span>β錛?/span>γ錛?/span>ε錛?/span>ζ(2)鍙?/span>χ浣嶄簬0锝?/span>360°涔嬮棿錛?/span>δ鏄腑杞村拰緋栫幆鐨勪竴閮ㄥ垎錛岃繖閲屾妸δ鍙仛ν顎?錛?/span>δ鏄竴縐嶅啑浣欎俊鎭?/span>P錛?/span>ν顎宮璺濈鍙互鎺ㄥ鍑恒傚吀鍨嬬殑璺濈鍒嗗埆鏄?/span>150°锝烇紥錛掞紩°錛岋紥錛曪紟錛?/span>°锝烇紩錛愶紟錛?/span>°(璺濈鐢ㄦ壄鍔涜鍙樺寲鍊艱〃紺?/span>)銆傚鏋?/span>DNA鐨?/span>8涓粨鏋勫弬鏁板凡鐭ワ紝鍒欐帓鍒椾綅緗凡鐭ョ殑DNA錛屽寘鎷叾涓墍鍚殑N涓牳鑻烽吀鍗沖彲瀹屽叏紜畾銆?/span>顎?/span>
DNA鎺㈤拡錛氳繖縐嶆帰閽?/span>(鍥?/span>3)錛堟殏鐣ワ級鍦ㄦ帰嫻嬬幆澧冧俊鎭柟闈紝浠庢渶鍘熷鐨勫崟緇嗚優鐢熺墿鍙樺艦铏師鐢熻川涓氨瀛樺湪鍏跺師濮嬪艦鎬併傝繖縐嶆帰閽堟満鏋勯殢瀹囧畽鍜岀敓鐗╂紨鍖栬岄愭笎鍙樺緱澶嶆潅璧鋒潵銆傜憺澹鑰呮柟榪婂井綺劇鍒嗘瀽瀛︺嬩竴涔︽妸榪欑鎺㈤拡寮忕殑灝濊瘯浣滅敤鍙仛“浼婂痙”銆傦薊7錛?/span>“浼婂痙”鍦ㄥ績鐞嗗鐣屽彈鍒伴噸瑙嗐?/span>DNA鐨勬帰閽堟槸涓縐嶅鏉傜殑緇煎悎浣擄紝鍦ㄧ敓鐗╁垎瀛愮粨鏋勭爺絀舵柟闈韓鏈夊箍娉涚殑鐩涘悕錛岀О涔嬩負DNA鎺㈤拡綰х殑鐮旂┒銆傛帰閽堢患鍚堜綋涓閮ㄥ垎鏄敱浜庡叾鏍歌嫹閰歌嚜琛ュ伩浣滅敤鑰屽嚭鍚嶇殑銆?/span>DNA鎺㈤拡鐢變竴涓弻閾炬潌鍜屼竴涓幆緇勬垚銆傛帰閽堟渶閲嶈鐨勯儴鍒嗘槸榪欎釜鐜傛帰閽堝湪婕斿寲榪囩▼涓潪甯稿畧鎭?/span>(紼沖畾)錛屽洜姝ゅ叿鏈夐噸瑕佺殑鐢熺墿鍔熻兘銆傛帰閽堝艦鎴愪簬緇嗚弻鍣弻浣撴渶鍘熷鐨勯噸澶嶅姛鑳姐?/span>DNA鏌撹壊浣撶粍瀛樺湪鏈夊鏉傜殑鐩鎬簰浣滅敤銆傝繖縐嶄綔鐢ㄨ兘琚叾浠栫敓鐗╁垎瀛愭墍璇嗗埆銆佸埄鐢紝浜﹀彲鐢卞師鐢熻川鏉ヨ瘑鍒?/span>顎?/span>
DNA鐩稿綋浜庝竴涓井瑙備笘鐣岋紝鍏剁粏閮ㄧ粨鏋勫拰鍔熻兘榪滄湭璁よ瘑鍒般傚彲浠ラ鏂欙紝瀹冧綔涓洪仐浼犵畻娉曠殑鑷劧鏍鋒澘錛屽叾鏈夌敤淇℃伅錛屽彇涔嬩笉灝斤紝鐢ㄤ箣涓嶇銆傝鎯蟲敼榪涢仐浼犵畻娉曪紝涓瀹氳鍏堝彇寰楄嚜鐒?/span>DNA鐨勬柊鎺㈢儲鎴愬氨銆傛渶榪戝DNA鐨勫亣緇撶偣鐨勮嫻嬶紝瀵?/span>DNA涓夊弶緇撴瀯鐨勮嫻嬪氨灞炰簬榪欐柟闈㈢殑鏂版帰绱€?/span>DNA鍙岄摼緇撴瀯鐩稿綋浜庡お鏋佺敓涓や華錛屼袱浠敓鍥涜薄錛屼竴鍒嗕負浜岀殑嫻戞矊浜屽垎鍙夌粨鏋勩傚皢鏉ュDNA涓夊弶緇撴瀯鐨勮璇嗗彲鑳藉紩瀵煎埌瀵廣婂お鐜勭粡銆嬩竴鍒嗕負涓夛紝涓尰“涓夐槾涓夐槼”鐨勮璇嗐傝繖騫墮潪閬ヨ繙鐨勫憮鎯籌紝鍙兘鏄笉涔呯殑浜嬫儏浜嗐?/span>顎?/span>
浜斻佹槗綆楃▼搴忛棶棰?/span>顎?/span>
鏄撳璞℃暟鐞嗚鑷垬鍥藉艦鎴愬悗錛岀敱浜庣ぞ浼氬埗搴︿笌澹ぇ澶剰璇嗗艦鎬佺殑鍘熷洜錛屾槗鏁頒笉鑳借蛋瑗挎柟鍏悊鍖栫殑閬撹礬銆傚緪宀熾婃暟鏈閬椼嬬Н綆椼佸お涔欑畻銆佷節瀹畻閮芥湁姣旇緝鐙珛鐨勭畻娉曘傚叾浣欎笉涓瀹氭湁鐙珛鐨勭畻娉曘傚叾涓彁鍑虹殑14縐嶇畻娉曟槸錛氱Н綆楋紝澶竴綆楋紝涓や華綆楋紝涓夋墠綆楋紝浜旇綆楋紝鍏崷綆楋紝涔濆綆椼佽繍絳圭畻錛屼簡鐭ョ畻錛屾垚鏁扮畻錛屾妸澶寸畻錛岄緹綆楋紝鐝犵畻錛岃綆?/span>(蹇冪畻)銆傚姣忕綆楁硶鐨勫彊榪幫紝鍙湁涓夎█涓よ錛岀湅涓嶅嚭鎵浠ョ劧銆傝縿浠婂皻鏈湁浜轟綔娣卞叆鐮旂┒銆傚師鍥犳槸“鏂囩尞涓嶈凍鏁呬篃”銆傝鎯蟲仮澶?/span>14縐嶇畻娉曠殑鍘熸牱錛屽彧鏈夎蛋鍒板熀灞傚啘姘戝拰闅愬眳鍨嬬殑鐭ヨ瘑鍒嗗瓙閭i噷浣滆皟鏌ャ傚彲鎯滃灝戝勾鏉ユ棤浜洪棶媧ワ紝鎵浠ュ洶鎯戜竴鐩存湭瑙c傛垜璁や負璋冩煡閲嶇偣涓昏鏄北涓滃崐宀涜摤鑾憋紝闀犵綐娌挎搗涓甯﹀北鍖哄啘鏉戙?/span>顎?/span>
銆婁節绔犳暟瀛︺?/span>“瀵撶悊浜庢湳”錛屾枃涓殑“鏈洶”浼氭湁綆楁硶鐞嗚鍜岀▼搴忚儗鏅?/span>顎?/span>錛?/span>8錛界幇鍦ㄥ敮涓鍙簡瑙g殑灝辨槸鐝犵畻綆楁硶錛屾宸叉湁鍏ㄥ浗鐝犵畻瀛︿細鍦ㄧ爺絀躲傚叾涓笉灝戝彛璇瑙勫垯錛屽牚縐扮畻娉曘傚彲浠庢鍏ユ墜浠ュ強浠庡巻浠e巻娉曟帹姝ユ湳鐨勬紨鍖栦腑榪界儲鏄撶畻綆楁硶銆傚彜鏈夈婄紑鏈嬶紝涓哄崡鍖楁湞紲栧啿涔嬫墍鍒涳紝鐢ㄤ簬浜旀槦鐨勬帹姝?/span>(瀹嬬Е涔濋煻銆婃暟涔︿節绔犮嬬涓夊嵎澶╂椂綾繪湁“緙鏈帹鏄?/span>”绔?/span>)銆傘婄紑鏈嬪湪銆婄畻緇忓崄涔︺嬩腑鏈夊悕鏃犱功錛屼功宸插け浼犮?/span>顎?/span>
鎬諱箣錛屾仮澶嶅彜浠f槗綆楃▼搴忕殑鐮旂┒鏄竴澶ц棰樸傚崡浜ぇ瀛﹀ぉ鏂囩郴鏈辯伩鐢熸暀鎺堟浘鎷熺爺絀舵仮澶嶇紑鏈傜┒绔熷彜浠f槗綆楄緇嗗唴瀹瑰浣曪紝灝氬緟鑰冭瘉鎭㈠銆傜Е姹夊墠鍚庡嚭鐜扮殑涓夊紡(澶箼銆佸叚澹佸闂?/span>)緇忓吀鏈暟鐨勬帹婕斾腑鍙兘鏈夋槗綆楃畻娉曠▼搴忕殑褰卞瓙銆傚叾涓棦鍚瀛﹀洜绱狅紝鍙堟湁涓嶅皯紲炵鍐呭錛屼粖鍚庡簲浣滃紑鍙戠爺絀躲?/span>顎?/span>
鍏佽薄鏁版濈淮涓庨仐浼犵畻娉曠殑姣旇緝顎?/span>
鏈漢鐮旂┒縐戝鏄撳騫達紝鐮旂┒閬椾紶綆楁硶宸叉湁涓冦佸叓騫達紝榪勪粖宸插垵姝ュ緱鍑烘槗鐨勮薄鏁版濈淮鍩烘湰涓婄瓑浠蜂簬閬椾紶綆楁硶鐨勬ц川涓庡姛鑳界殑鍒濇鐪嬫硶銆傛墍璋撹薄鏁版濈淮涓昏鏄寘鍚湪瀛斿瓙鍙婂叾寮熷瓙鎵浣滅殑銆婃槗浼犮嬩腑錛屼笖涓昏鏄婄郴杈炰紶銆嬨傜粡瀵規瘮鍙戠幇錛屾棤璁虹敤鑷劧閬椾紶榪囩▼錛岀敓鐗╂紨鍖栬蹇碉紝鏁翠綋瑙傛垨鏍規嵁瀹為檯瑙傛祴鏉ヨ璇嗚嚜鐒訛紝鍦ㄩ棶棰樹紭鍖栵紝鐢熺墿閬椾紶鍩哄洜浜ら厤銆佸彉寮傦紝浠ュ強鍦ㄦ函寰鍜岄嫻嬮棶棰樹笂閮借〃鐜頒簡璞℃暟鎬濈淮涓庨仐浼犵畻娉曠殑鐩鎬技鎬с傘婅瘲緇?/span>·灝忛泤銆嬭錛?/span>“鍞叾鏈変箣錛屾槸浠ヤ技涔嬨?/span>”鎰忓嵆涓ょ浜嬬墿鐩鎬技鐨勬牴鏈師鍥犳槸浜岃呬箣闂存湁鍏卞悓鐨勪笢瑗褲傝繖浜︽槸銆婂唴緇忋?/span>“璐よ呭療鍚岋紝鎰氳呭療寮?/span>”涔嬫剰銆備粖灝嗕簩鑰呮瘮杈冨涓嬶細顎?/span>
錛戯紟閬椾紶綆楁硶(浠ヤ笅鐢?/span>GA綆鍐欒〃紺?/span>)鍜屻婃槗銆嬮兘閲嶈鐢熷懡鐜拌薄錛岀壒鍒槸閬椾紶榪囩▼銆傘婄郴杈炰紶銆嬭“鐢熺敓涔嬭皳鏄?/span>”錛?/span>“澶╁湴涔嬪ぇ寰鋒洶鐢?/span>”銆?/span>顎?/span>
錛掞紟GA鍜屻婃槗銆嬮兘閲嶈婕斿寲錛岄噸瑙嗕粠娣鋒矊鍒版湁搴忕殑瑙傚康錛岃岃涓虹‘瀹氫笉鍙樼殑瀛樺湪鏄殏鏃剁殑銆傚疄闄呬笂錛?/span>GA鍜屻婃槗銆嬮兘鏈夐艱繎璁烘濇兂銆?/span>顎?/span>
錛擄紟浜岃呴兘鏈夋暣浣撹鎬濇兂錛?/span>GA鐢ㄧ浉褰撴煋鑹蹭綋鐨勭緹?/span>(population)鏁頒綔涓哄熀紜錛岀敤鐩稿綋鍩哄洜鐨勪簩榪涘埗鏁頒覆杈撳叆璁$畻鏈鴻繍綆椼傛墍鐢ㄦ暟鐨勮璁¢兘鏄竴涓泦鍚堬紝鑰屼笉鏄敤鍗曚釜鏁般傛槗綆楃敤澶ц涔嬫暟50(铏氫竴涓嶇敤)浣滀負婕旂畻鍩虹錛屼害鏄暣浣撹銆?/span>顎?/span>
錛旓紟浜岃呴兘鏄互瀹為檯瑙傛祴涓虹爺絀舵牴鎹?/span>GA鏄タ鏂瑰疄嫻嬫柟娉曠殑緇х畫錛岃嚜涓嶅緟璦銆備紡緹叉皬鏄牴鎹話瑙備刊瀵熴佽繙鍙栬繎鍙栬繘琛屾瘮杈冨悗鑰岀敾鍏崷鐨勶紝涓嶆槸鍑┖鑷嗛犮?/span>顎?/span>
錛曪紟GA浠ユ眰寰楅棶棰樹紭鍖栬В瑙侀暱銆傚瓟瀛愯皳銆婃槗銆嬫槸瀵¤繃涔嬩功錛岃秼鍚夐伩鍑朵箣涔︼紝浠庡箍涔変笂鐪嬩篃鏄竴縐嶄紭鍖栥傚厓鍚?/span>(澶у悏)涓哄叏灞浼樺寲錛屽悏鎴栨倲鑰屽悗鍚夋槸灞閮ㄤ紭鍖栥?/span> 鐗瑰埆鏄婃槗銆嬫湁銆婃棦嫻庛嬨併婃湭嫻庛嬩簩鍗︿綔涓虹翰棰嗗崷銆傘婃棦嫻庛嬩箖浼樺寲鐨勭粨鏋滐紝銆婃湭嫻庛嬩篃璁炬硶浣垮叾杞彉錛屽悜銆婃棦嫻庛嬪彂灞曪紝寰堝鍗︾埢杈炲瓧閲岃闂達紝澶氭湁姝ゆ剰銆?/span>顎?/span>
錛栵紟浜岃呴噸浜嬬墿涔嬮棿鐨勭浉浜掍綔鐢ㄥ拰鍏崇郴銆?/span>GA鐢ㄤ氦閰嶆潵琛ㄨ揪姝ゆ剰錛屻婃槗銆嬪垯浠?/span>“澶╁湴闀?/span>願?/span>錛屼竾鐗╁寲閱囷紝鐢峰コ鏋勭簿錛屼竾鐗╁寲鐢?/span>”錛?/span>“澶╂皵涓嬮檷錛屽湴姘斾笂鑵?/span>”(銆婄ぜ璁?/span>·鏈堜護銆?/span>)鏉ヨ〃紺恒?/span>顎?/span>
錛楋紟浜岃呭潎閲嶈璐ㄥ彉錛?/span>GA璋撲箣鍙樺紓錛屻婂懆鏄?/span>·緋昏緸浼犮嬪垯璇達細“絀峰垯鍙橈紝鍙樺垯閫氥?/span>”顎?/span>
錛橈紟浜岃呭潎娑夊強鏁板絀洪棿鐨勭悊璁哄拰搴旂敤銆?/span>GA甯哥敤緇撴瀯鍙傛暟絀洪棿錛屻婃槗銆嬪垯鏈夊叓鍗︾┖闂達細“鍏崷鎴愬垪錛岃薄鍦ㄥ叾涓煟”錛?/span>“涔懼潳鎴愬垪鑰屾槗绔嬩箮鍏朵腑鐭?/span>”銆?/span>顎?/span>
錛欙紟銆婄郴杈炰紶銆嬭錛?/span>“紲炰互鐭ユ潵錛屾櫤浠ヨ棌寰”銆?/span>GA鏃㈣兘鎺㈢儲宸插線瑙e喅闂錛屽張鑳界敤浜庡湴闇囬鎶ャ?/span>顎?/span>
GA鐨勪綔鑰呮彁鍑虹畻娉曠殑鏀硅繘闂錛屼富瑕佹槸娣卞叆鎸栨帢DNA緇撴瀯鐨勬綔鍔涖傝屼笢鏂規濈淮鍒欐湁“宸㈠眳鐭ラ錛岀┐灞呯煡闆?/span>”鐨勮娉曪紝榪欑璇存硶鏄瀛︾殑錛屽嵆楦熺被鍜屾槅铏被(濡傝殏铓?/span>)鍧囨湁棰勬祴澶╂皵鍙樺寲鐨勫姛鑳姐傚鑳藉紑鍙戦笩綾誨拰铓傝殎浣撳唴淇℃伅澶у垎瀛愮粨鏋勫ゥ縐橈紝鍙互鐢ㄤ互鏀硅繘GA綆楁硶鐨勫姛鑳姐?/span>顎?/span>
闄勬敞錛氬凡鏁呭鑰呭垬緇嶅厜涓鍏冩暟鐞嗚鐨勭爺絀舵槸鏍規嵁鏄撳璞℃暟鍙戝睍鍑虹殑涓縐嶆槗綆楁暟瀛﹀垎鏀傝繖涓鍒嗘敮鍚庣戶涔忎漢鎴栨棤浜恒傚叧浜庝竴鍏冩暟鐞嗚宸插嚭鐗堛婁竴鍏冩暟鐞嗚鍒濇帰銆?/span>顎?/span>錛伙紮錛戒竴涔︼紝鍏朵腑涓嶅皯涓?/span>GA鏈夌浉閫氫箣澶勶紝濡傚叾涓彁鍑虹殑浣嶅厓銆佸簭鍏冦佺粨鍏冧笁涓綆楃▼搴忕悊璁烘蹇碉紝浠ュ強紓佸瓙銆佺數瀛愩佸0瀛愩佸厜瀛愩佺儹瀛愩佸紩瀛愩佸紶瀛愮瓑寮闃栬鐨勯棶棰樸傚潎鍙笌GA鐩鎬簰浣滅敤錛岃屽垱閫犳柊鐨勭畻娉曘?/span>
璁劇疆| 鍛戒護琛?/strong> | Project settings | 璇存槑 |
| 鏃?/td> | None | 娌℃湁璋冭瘯淇℃伅 |
| /Zd | Line Numbers Only | 鐩爣鏂囦歡鎴栬呭彲鎵ц鏂囦歡涓彧鍖呭惈鍏ㄥ眬鍜屽鍑虹鍙蜂互鍙婁唬鐮佽淇℃伅錛屼笉鍖呭惈絎﹀彿璋冭瘯淇℃伅 |
| /Z7 | C 7.0- Compatible | 鐩爣鏂囦歡鎴栬呭彲鎵ц鏂囦歡涓寘鍚鍙峰拰鎵鏈夌鍙瘋皟璇曚俊鎭紝鍖呮嫭鍙橀噺鍚嶅強綾誨瀷錛屽嚱鏁板強鍘熷瀷絳?/td> |
| /Zi | Program Database | 鍒涘緩涓涓▼搴忓簱(PDB)錛屽寘鎷被鍨嬩俊鎭拰絎﹀彿璋冭瘯淇℃伅銆?/td> |
| /ZI | Program Database for Edit and Continue | 闄や簡鍓嶉潰/Zi鐨勫姛鑳藉錛岃繖涓夐」鍏佽瀵逛唬鐮佽繘琛岃皟璇曡繃紼嬩腑鐨勪慨鏀瑰拰緇х畫鎵ц銆傝繖涓夐」鍚屾椂浣?pragma璁劇疆鐨勪紭鍖栧姛鑳芥棤鏁?/td> |
鏂偣
鍊?br>Watch
榪涚▼鎺у埗| 蹇嵎閿?/strong> | 璇存槑 |
| F5 | 緇х畫榪愯 |
| F10 | 鍗曟錛屽鏋滄秹鍙婂埌瀛愬嚱鏁幫紝涓嶈繘鍏ュ瓙鍑芥暟鍐呴儴 |
| F11 | 鍗曟錛屽鏋滄秹鍙婂埌瀛愬嚱鏁幫紝榪涘叆瀛愬嚱鏁板唴閮?/td> |
| CTRL+F10 | 榪愯鍒板綋鍓嶅厜鏍囧銆?/td> |
Call Stack
璋冪敤鍫嗘爤鍙嶆槧浜嗗綋鍓嶆柇鐐瑰鍑芥暟鏄閭d簺鍑芥暟鎸夌収浠涔堥『搴忚皟鐢ㄧ殑銆傚崟鍑籇ebug宸ュ叿鏉′笂鐨凜all stack灝辨樉紺篊all Stack瀵硅瘽妗嗐傚湪CallStack瀵硅瘽妗嗕腑鏄劇ず浜嗕竴涓皟鐢ㄧ郴鍒楋紝鏈涓婇潰鐨勬槸褰撳墠鍑芥暟錛屽線涓嬩緷嬈℃槸璋冪敤鍑芥暟鐨勪笂綰у嚱鏁般傚崟鍑昏繖浜涘嚱鏁板悕鍙互璺沖埌瀵瑰簲鐨勫嚱鏁頒腑鍘匯?br>
鍏朵粬璋冭瘯鎵嬫
緋葷粺鎻愪緵涓緋誨垪鐗規畩鐨勫嚱鏁版垨鑰呭畯鏉ュ鐞咲ebug鐗堟湰鐩稿叧鐨勪俊鎭紝濡備笅錛?
| 瀹忓悕/鍑芥暟鍚?/strong> | 璇存槑 |
| TRACE | 浣跨敤鏂規硶鍜宲rintf瀹屽叏涓鑷達紝浠栧湪output妗嗕腑杈撳嚭璋冭瘯淇℃伅 |
| ASSERT | 瀹冩帴鏀朵竴涓〃杈懼紡錛屽鏋滆繖涓〃杈懼紡涓篢RUE錛屽垯鏃犲姩浣滐紝鍚﹀垯涓柇褰撳墠紼嬪簭鎵ц銆傚浜庣郴緇熶腑鍑虹幇榪欎釜瀹?瀵艱嚧鐨勪腑鏂紝搴旇璁や負浣犵殑鍑芥暟璋冪敤鏈兘婊¤凍緋葷粺鐨勮皟鐢ㄦ鍑芥暟鐨勫墠鎻愭潯浠躲備緥濡傦紝瀵逛簬涓涓繕娌℃湁鍒涘緩鐨勭獥鍙h皟鐢⊿etWindowText絳夈?/td> |
| VERIFY | 鍜孉SSERT鍔熻兘綾諱技錛屾墍涓嶅悓鐨勬槸錛屽湪Release鐗堟湰涓紝ASSERT涓嶈綆楄緭鍏ョ殑琛ㄨ揪寮忕殑鍊鹼紝鑰孷ERIFY璁$畻琛ㄨ揪寮忕殑鍊箋?/td> |
鍏蟲敞
涓涓ソ鐨勭▼搴忓憳涓嶅簲璇ユ妸鎵鏈夌殑鍒ゆ柇浜ょ粰緙栬瘧鍣ㄥ拰璋冭瘯鍣紝搴旇鍦ㄧ▼搴忎腑鑷繁鍔犱互紼嬪簭淇濇姢鍜岄敊璇畾浣嶏紝鍏蜂綋鎺柦鍖呮嫭錛?
鎴戝C璇█宸茬粡榪戜袱涓湀錛屻奀璇█紼嬪簭璁捐銆嬭繖鏈功鎴戠幇鍦ㄦ鍦ㄧ湅絎笁閬嶏紝铏界劧涓婃鑰僀絳夌駭鏃朵簩綰ф病榪囷紝浣嗘垜鐩鎬俊浠ユ垜鐜板湪姘村鉤鏄偗瀹氬彲浠ラ氳繃鑰冭瘯錛屽茍涓旀垜宸茬粡絎簩嬈℃姤浜嗗悕銆?
瀛﹀埌鐜板湪鎴戝嵈浠嶇劧涓嶇煡閬撹鎬庝箞鍘葷紪紼嬶紝褰撴垜鎯沖啓涓涓父鎴忕殑鏃跺欐墠鍙戠幇鑷繁浠涔堜篃涓嶆噦錛屾垜搴旇鍐嶇湅鐪嬩粈涔堜功濂藉憿錛熷涔嬭嚧鐢ㄣ?
鎴戣闂簡璁稿楂樻墜浠栦滑鍛婅瘔鎴?----鍒濆鑰呴兘鏈夎繖縐嶅洶鎯戠殑銆?
閫夋嫨浜咺T錛屽氨鎰忓懗鐫鑹拌緵錛屽洶鑻︿笌鎸戞垬錛佽瀛︾殑涓滆タ榪樺緢澶氬緢澶?.....涓嶈鎯充竴姝ョ櫥澶╋紝涓嶈鎯寵蛋鎹峰緞錛侊紙闄ら潪浣犲彧鏄帺鐜╋紝鎴栬呬綘鏈塗ALENT錛侊級鍩虹鏈閲嶈錛両T浠婚噸鑰岄亾榪滐紝鏈嬪弸錛屽師浣犳湁涓棰楀潥瀹氱殑蹇冿紝璧頒笅鍘伙紝涓嶄細閿欙紒錛侊紒
鍦ㄤ綘瀛︿範鐨勫悓鏃訛紝榪樿娉ㄦ剰涓涓婭T鐨勮鎯咃紝澶氫簡瑙d簡瑙o紝鎽嗗ソ鑷繁鐨勪綅瀛愶紝姝g‘瀵瑰緟姣忎竴浠朵簨錛佹垜鐩鎬俊浣犱竴瀹氫細鎴愬姛鐨勶紒錛侊紒
鐪熸鐨勭▼搴忓憳鐢–錛屾渶鏈変環鍊肩殑紼嬪簭鍛樻槸鐢–鐨勭▼搴忓憳銆備笉鏄紑鐜╃瑧錛?
C璇█鍙槸涓涓熀紜銆備竴涓兘澶熷悜琛ㄨ揪浣犵殑鎯蟲硶鐨勫熀紜錛屼細浜咰鑳藉鍐欑▼搴忥紝浣嗘槸涓嶈寰楄兘澶熷啓鍑烘湁瀹為檯鎰忎箟鐨勮蔣浠躲傦紙寤鴻瀛︿範鏋舵瀯錛?
褰撲綘瀛﹀埌涓嶈嚜瑙夊湴浣跨敤榪欓棬璇█鏃訛紙澶х害鍐?涓囪浠g爜灝卞樊涓嶅浜嗭級錛屼綘鐨刢璇█鎵嶅彲浠ヨ瀛︿細浜嗐備笉鏄湁涓瑧璇濆悧錛熻鐨勫氨鏄▼搴忓憳鐨勭棿榪風▼搴︺傛垜鎯沖簲璇ユ湁榪欐牱鐨勭簿紲炴墠琛屻傚緩璁殏鏃朵笉瑕佺湅楂樼駭緙栫▼錛屽鍐欎唬鐮併佸鐪嬩唬鐮併佸煿鍏婚鏍箋佺啛鎮夎娉曘佹渶鍏抽敭鐨勬槸鎶婃彙鎬濇兂銆?
瀛璇█騫朵笉鍙槸瀛﹁娉曢偅涔堢畝鍗曪紝閲嶈鐨勬槸緙栫▼鎬濇兂錛岄毦鐨勬槸瀹冨湪涓嶅悓鐜涓嬬殑搴旂敤銆傝繖鏄竴涓極闀跨殑榪囩▼錛岄渶瑕佺粡楠岀殑縐瘡銆傚綋鐕冿紝騫朵笉鏄姝繪鎶撲綇C涓嶆斁錛屼絾濡傛灉浣犵洰鍓嶈繕涓嶇煡璇ユ庢牱緙栫▼錛屽緩璁湪浣犳湁涓縐嶆父鍒冩湁浣欑殑鎰熻涔嬪墠錛岃繕鏄笉瑕佸幓紕頒粈涔圕++,Java涔嬬被錛岄偅鏍蜂綘閬囧埌鐨勫洶闅句細鏇村ぇ銆傝嚜宸辯嫭绔嬪啓瀹屼竴涓▼搴忥紙鏃犺澶у皬錛夊茍鐪嬪埌浠栫殑姝e父榪愯鏃朵究浼氭湁涓縐嶆垚灝辨劅銆備笉鏂煿鍏昏繖縐嶆垚灝辨劅錛屽驚搴忔笎榪涳紝榪涙鏄嚜鐒剁殑浜嬫儏銆?
棣栧厛
C璇█鏄竴涓極闀跨殑榪囩▼錛屽畠鏄熀紜錛屽湪寰堥暱寰堥暱......鐨勬椂鏈熷唴涓嶄細琚窐姹般傛妸C璇█瀛﹀ソ浜嗭紝鍏朵粬鐨勶紝FOR EXAMPLE錛欳++錛孋#錛孞AVA錛孷C錛孷C++錛孷B錛孌ELPHI......榪欎簺瀛﹁搗鏉ュ氨浼氭瘮閭d簺C璇█鍩虹涓嶆墡瀹炵殑浜鴻杞繪澗寰楀錛?
浜嗚В涓涓嬪簱鍑芥暟銆傝繛搴撳嚱鏁伴兘涓嶄簡瑙f庝箞鍘葷紪紼嬶紵鎴戜篃鏄垰鍚漢瀹惰瑕佺湅搴撳嚱鏁扮殑銆?
鍒濈駭闃舵寤鴻
鎴戞槸鍚漢璇寸殑錛屾垜鐜板湪鍙病榪欎箞澶ф湰浜嬶細
1.鎴戣鐨勫彲浠ュ厛璇曠潃鍘誨垝涓鏉in鏇茬嚎銆?
2.鑷繁鍋氫竴涓被浼紅c鐨勭晫闈紝榪欐槸鑿滃崟鐨勭粌涔犮?
3.緇冧範涓柇鐨勮皟鐢紝閿洏錛岄紶鏍囷紝鏃墮棿絳夈?
4.tc鏄竴涓伐鍏風錛宼c涓嬬殑搴撳嚱鏁版槸鍚勭鍚勭鐨勫伐鍏鳳紝鎴戜滑瑕佸畬鎴愪竴浠跺伐浣滃繀欏誨宸ュ叿鐔熸倝錛屽嵆浣跨敤鐨勪笉鐔熸倝錛屼絾鑷沖皯涔熻鏈夊嵃璞°傛墍浠ャ妕c鍑芥暟澶у叏銆嬫槸蹇呭涔嬬墿銆傛墍浠ヨ緇忓父鐪媡c涓嬬殑搴撳嚱鏁般?
5.榪欐槸鏈閲嶈鐨勪竴鏉★細just do it錛佹垜鐜板湪鎵嶆槑鐧絥ike 鐨勫箍鍛婄殑鐪熻皼錛屽叾瀹炰篃鏄繖涓笘鐣岀殑寰堥噸瑕佺殑涓鏉ust do it錛?
6.瀵逛簬鎸囬拡錛屾垜涔熶笉鐭ュ埌濡備綍鍘葷敤瀹冿紝閭d簺鍦版柟蹇呴』鐢ㄥ畠錛屾垜鎶婃彙涓嶄綇銆?
鍦═C紼嬪簭涓綘鍙互宓屽叆姹囩紪銆佸彲浠ユ販鍚堢紪紼嬨傛垜瑙夊緱宓屽叆姹囩紪榪欎竴鐐瑰緢璇變漢銆傚畠浣夸綘鍦ㄧ悊璁轟笂鏃犳墍涓嶈兘銆傛販鍚堢紪紼嬫湁鍒╀簬鎻愰珮瀵圭紪璇戞柟娉曠殑鐞嗚В銆?
鐒跺悗鍙互鍐欎縿緗楁柉鏂瑰潡錛屾眽璇哄錛岃椽椋熻泧錛岀┖闂翠綔鎴橈紝鍚冭眴絳夋父鎴?
鎺ョ潃鍙互瀛ASM錛孋+MASM=NUCLAER錛佸綋鐒舵槸鍋氱郴緇熶簡銆?
瀛﹀埌榪欓噷灝卞彲浠ヨC鍩烘湰涓婃槸瀛︿細浜嗐?
c ------> c++ ----->鏁板瓧閫昏緫璁捐銆佺鏁f暟瀛︺佹暟鎹粨鏋勪笌綆楁硶錛堣繖鏄竴涓鏍$殑璇劇▼錛?
絎簩闃舵
c++鏄痗鐨勬彁楂橈紝鏄潰鍚戝璞$殑璇█錛屼篃鏄埌visual c鐨勫繀緇忎箣璺傜幇鍦ㄥ氨璋堣皥visual c鐨勯夋嫨闂銆?
鎴戞兂鍦ㄥ浗鍐呮潵璁睼C綆椾笉涓奟AD錛堝揩閫熷簲鐢ㄥ紑鍙戯級宸ュ叿錛屽洜涓篤C寮鍙戠殑鏁堢巼鏄緢宸殑錛屽浜庝竴浜涘鎴風搴旂敤鏉ヨ寮鍙戞晥鐜囨槸璁╀漢闅句互蹇嶅彈鐨勩傛澶栬繕鏈変竴涓紑鍙戠殑璇尯灝辨槸“鍙鐢╒C灝卞彲浠ヤ粈涔堜簨閮借嚜宸卞仛錛?#8221;鎴戞兂鏈鑷村懡鐨勫氨鏄繖涓鐐癸紝瑕佷慨涓鏍嬫ゼ鎴戞兂涓嶉渶瑕佽繛鐮栫摝閮借鑷繁鐑у惂錛?
鎴戜笂闈㈢殑璇存硶騫朵笉鏄湪鍚﹀畾VC錛屾垜鍙浜嗗紑鍙戜腑鐨勪竴涓柟闈紝濡傛灉浠庣淮鎶ょ殑瑙掑害涓婃潵璁睼C鍙互璇存槸鏈濂界殑宸ュ叿銆俈C鐨勫ソ澶勫湪緇存姢鐨勮繃紼嬩腑灝變細浣撶幇鍑烘潵錛屾垜涓漢璁や負鐢╒C寮鍙戝嚭鏉ョ殑杞歡鍦ㄧ淮鎶よ繃紼嬩腑鎵鑺辮垂鐨勫伐浣滈噺瑕佸皬浜庡叾浠栧浘褰㈢晫闈㈠紑鍙戝伐鍏鋒墍寮鍙戠殑杞歡銆傚綋鐒惰繖瑕佹眰緇存姢浜哄憳涔熷繀欏繪槸涓涓瘮杈冧紭縐鐨刅C寮鍙戜漢鍛樸?
鏈鍚庢垜璇寸偣鍦ㄩ夋嫨VC寮鍙戞椂鐨勪竴浜涚湅娉曪細
鏃犺璋佸彧瑕佹効鎰忛兘鍙互閫夋嫨VC浣滀負寮鍙戝伐鍏鳳紝浣嗕綘蹇呴』鏈夎愬績鍜岀簿鍔涖?
濡傛灉浣犳洿鍋忛噸浜庡紑鍙慦indows鍚庡彴鏈嶅姟錛岄偅涔堣閫夋嫨VC錛屼笉瑕佺姽璞?
濡傛灉浣犺蔣浠舵墽琛屾晥鐜囨槸闈炲父閲嶈鐨勮 閲忓洜绱犺屼笖澶栭儴鏉′歡鏈夐檺錛岄偅涔堣閫夋嫨VC錛屼笉瑕佺姽璞?
濡傛灉浣犳兂瀹屽叏鐨勬妸鎻″紑鍙戣繃紼嬩腑鐨勬瘡涓涓幆鑺傦紝閭d箞璇烽夋嫨VC錛屼笉瑕佺姽璞?
濡傛灉浣犵殑杞歡寰堝鏉傦紝鑰屼笖浠ュ悗浼氭湁鍏朵粬浜烘帴鎵嬩綘鐨勫伐浣滐紝寤鴻鍦ㄤ富紼嬪簭涓嬌鐢╒C錛屽茍鍑嗗濂藉厖瓚崇殑鏂囨。銆?
濡傛灉浣犳兂鏇村鐨勪簡瑙g郴緇熺殑鍚勭鐗規э紝鑰屼笖甯屾湜鑷繁鐨勮蔣浠惰兘澶熸湁鏇村鐨勭伒媧繪э紝閭d箞璇烽夋嫨VC錛屼笉瑕佺姽璞?
濡傛灉浣犳兂寮鍙戜竴濂楀ソ鐨勫紑鍙戝寘錛岄偅涔堣閫夋嫨VC錛屼笉瑕佺姽璞傦紙鍥犱負C/C++鏇存帴榪戠郴緇燂紝C/C++寮鍙戝嚭鏉ョ殑寮鍙戝寘鍙互寰堟柟渚跨殑琚叾浠栧紑鍙戝伐鍏瘋皟鐢級
……
濡傛灉浣犱笅瀹氬喅蹇冿紝闈濾C涓嶅錛屾垜紲濊春浣狅紝浣犵殑閫夋嫨娌℃湁閿欍?
濡傛灉浣犲洜涓轟粈涔堝師鍥犳斁寮僔C錛屾垜涔熺璐轟綘錛屼綘鐨勯夋嫨娌℃湁閿欍?
浣嗘槸涓涓湡姝g殑紼嬪簭鍛樺簲閫塿c錛?
緇?鏉?璇?
瑕佸鐨勮繕寰堝 鎱㈡參鏉ヤ綘浼氳鐨勩傜浣犵紪紼嬫剦蹇?!!!!
鎺ㄨ崘涔︾睄
---------------------------------------------------------------------------------------------------------------------------
C璇█錛?
娓呭崕璋旦寮虹殑銆奀璇█紼嬪簭璁捐銆?
娓呭崕閽辮兘鐨勩奵++銆?
娓呭崕鐨勩?086/8088姹囩紪璇█銆?
鏁版嵁緇撴瀯錛?
鐢靛瓙宸ヤ笟鍑虹増紺綿e <<璁捐妯″紡>>寰堜笉閿?
瀛︿範蹇冨緱
---------------------------------------------------------------------------------------------------------------------------
1.濡傛灉浣犳槸鐪熺殑鍠滄緙栫▼錛岄偅浠涔堥兘涓嶆槸闂鐨?
2.瀹炶返銆?
3.鎵劇偣瓚e懗鐨勫皬紼嬪簭緙栦竴閬嶃傜湅鐪嬫暟鎹粨鏋勩傛壘鏇撮珮綰х殑c紼嬪簭涔︾湅鐪?
4.瀛︿範鏁版嵁緇撴瀯鐢╟璇█瀹炵幇
5.鎵炬簮浠g爜鐪?
6.鑷繁緙栦竴涓妯″潡鐨勭▼搴?
7.鍐嶅涓緙朇
8.緇х畫瀛︼紝鐒跺悗鎵懼伐浣?
澶氱湅涔︼紒
澶氬疄璺碉紒
澶氳鏁欙紒
瀛﹀鏁版嵁緇撴瀯涔嬪悗浣犱細鏈夋柊鐨勫彂鐜頒竴瀹?
鎴戝墠澶╁幓浜嗕竴 瀹惰蔣浠跺叕鍙歌闂簡涓涓嬪晩錛屼粬浠粡鐞嗚鐢– 涔熻錛屼絾瑕佸緢鐔熸倝寰堢啛緇冿紒錛?br>--
澶╀嬌鏄笂甯濋夊彫鐨勪紭縐浜虹被錛屽郊姝ゅ鐙殑媧葷潃銆傚湪閬囧埌鍙︿竴涓ぉ浣夸箣鍓嶏紝澶╀嬌鎬繪槸璇曞浘鎺ヨ繎浜虹被錛屼漢綾葷晱鎯уぉ浣跨殑緹庝附錛岀編涓藉洜涓哄ぉ浣垮湪絀轟腑鑰岀編涓斤紝浜轟笌澶╀嬌涔嬮棿鎬繪湁闅旇啘--鍥犱負鐣忔儳銆傚ぉ浣夸負姝ゆ敹璧風繀鑶錛屾渶緇堝ぉ浣跨粓浜庡喅蹇冨搧鍛沖鐙紝灞曠繀楂橀銆?