锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品国产精品乱码不99按摩,欧美午夜电影一区,国产精品人人爽人人做我的可爱 http://m.shnenglu.com/jianc/category/18732.html<script type="text/javascript">
function OnClient(){
var tmp = 1;
var tmp2 = 2;
var sum = tmp + tmp2;
alert(sum);
}
</script> zh-cn Wed, 03 Feb 2016 10:07:22 GMT Wed, 03 Feb 2016 10:07:22 GMT 60 浠g爜鑷姩琛ュ叏鎻掍歡 http://m.shnenglu.com/jianc/archive/2016/01/31/212766.htmljianc jianc Sun, 31 Jan 2016 13:21:00 GMT http://m.shnenglu.com/jianc/archive/2016/01/31/212766.html http://m.shnenglu.com/jianc/comments/212766.html http://m.shnenglu.com/jianc/archive/2016/01/31/212766.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/212766.html http://m.shnenglu.com/jianc/services/trackbacks/212766.html Visual Assist http://www.wholetomato.com/
]]>zeromq? http://m.shnenglu.com/jianc/archive/2012/10/11/193170.htmljianc jianc Thu, 11 Oct 2012 07:58:00 GMT http://m.shnenglu.com/jianc/archive/2012/10/11/193170.html http://m.shnenglu.com/jianc/comments/193170.html http://m.shnenglu.com/jianc/archive/2012/10/11/193170.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/193170.html http://m.shnenglu.com/jianc/services/trackbacks/193170.html http://www.zeromq.org/https://github.com/zeromq/libzmq
http://zguide2.zeromq.org/page:all
http://blog.codingnow.com/2011/02/zeromq_message_patterns.html
]]> GDI Plus搴撲嬌鐢ㄥ熀紜 http://m.shnenglu.com/jianc/archive/2012/05/17/175197.htmljianc jianc Thu, 17 May 2012 05:19:00 GMT http://m.shnenglu.com/jianc/archive/2012/05/17/175197.html http://m.shnenglu.com/jianc/comments/175197.html http://m.shnenglu.com/jianc/archive/2012/05/17/175197.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/175197.html http://m.shnenglu.com/jianc/services/trackbacks/175197.html 閰嶇疆濂藉簱鐜鍚? 涓嬮潰鍐欏嚭浣跨敤GDI Plus鐨勫熀鏈楠? 1.鍖呭惈澶存枃浠?br />#include <gdiplus.h> 2.浣跨敤鍚嶅瓧絀洪棿 using namespace Gdiplus; 3.榪炴帴蹇呰鐨勫鍏ュ簱鏂囦歡 #pragma comment(lib, "gdiplus.lib") 4.鍒濆鍖?br />ULONG_PTR m_gdiplusToken;
GdiplusStartupInput m_gdiplusStartupInput;
GdiplusStartup(&m_gdiplusToken, &m_gdiplusStartupInput, NULL);
5.浣跨敤GDI Plus搴?br />6.鐢ㄥ畬搴撳悗, 閲婃斁鎿嶄綔
GdiplusShutdown(m_gdiplusToken);
]]>MFC鐐瑰嚮Dialog紿椾綋鍙嫋鍔?/title> http://m.shnenglu.com/jianc/archive/2012/05/11/174547.htmljianc jianc Fri, 11 May 2012 02:59:00 GMT http://m.shnenglu.com/jianc/archive/2012/05/11/174547.html http://m.shnenglu.com/jianc/comments/174547.html http://m.shnenglu.com/jianc/archive/2012/05/11/174547.html#Feedback 1 http://m.shnenglu.com/jianc/comments/commentRss/174547.html http://m.shnenglu.com/jianc/services/trackbacks/174547.html MFC鍒涘緩涓涓彲閫氳繃榧犳爣鐐瑰嚮瀹㈡埛鍖烘嫋鍔ㄧ獥鍙d綅緗殑鏂規硶 閫氳繃娣誨姞娑堟伅鍝嶅簲鍑芥暟 afx_msg UINT OnNcHitTest(CPoint point); 娣誨姞瀹?br />ON_WM_NCHITTEST() 鐒跺悗, 瀹氫箟OnNcHitTest鐨勮涓哄嵆鍙? OnNcHitTest鐨勪唬鐮佸涓?UINT CTimerDlg::OnNcHitTest(CPoint point) { CRect rect; GetClientRect(rect); ClientToScreen(rect); if (rect.PtInRect(point)) return HTCAPTION; return CDialog::OnNcHitTest(point); }
棣栧厛, 鍙戠敓WM_NCHITTEST娑堟伅鐨勬椂鍊? 紼嬪簭鍏堝彇寰楀鎴峰尯鐨勭獥鍙g煩褰? 榪欓噷鐢ㄥ埌GetClientRect鏂規硶寰楀埌, 鐢變簬GetClientRect鍙栧緱鐨勬槸鐩稿浜庣獥鍙e潗鏍囩郴緇? 浣哋nNcHitTest鐨勫弬鏁皃oint鍗存槸鐩稿浜庡睆騫曠殑鍧愭爣緋葷粺, 鎵浠ヨ繖閲岀敤鍒頒簡ClientToScreen鎶婂彇鍒扮殑瀹㈡埛鍖虹煩褰㈣漿鎴愮浉瀵逛簬灞忓箷鐨勫潗鏍? 鐒跺悗鐢–Rect綾葷殑PtInRect鏂規硶鍒ゆ柇point鏄惁钀藉湪榪欎釜鐭╁艦閲岄潰, 濡傛灉鏄? 鍒欒繑鍥濰TCAPTION(灝辯浉褰撲簬榪欐鐐瑰嚮鏄偣鍑繪爣棰樻爮), 鎵浠? 灝卞彲浠ヨ繖鏍鋒潵鎷栧姩紿楀彛浜? 濡傛灉, OnNcHitTest鐩存帴榪斿洖HTCAPTION鐨勮瘽, 閭d箞, 浣嗙敤鎴風偣鍑婚潪瀹㈡埛鍖虹殑鏃跺? 鏈変簺鍔熻兘浼氬け鏁? 姣斿鐐瑰嚮緋葷粺鐨勫叧闂寜閽? 璇曚竴涓嬪氨浼氬彂鐜拌繖涓寜閽棤鏁堜簡; ok, 濡傛灉鐐瑰嚮鐨勬槸闈炲鎴風, 鑰呯洿鎺ヨ繑鍥濩Dialog::OnNcHitTest(point), 榪欏氨鏄寜榛樿澶勭悊浜? 浠ヤ笂鐨勮繖涓柟娉曟瘮杈冮夯鐑? 鍏跺疄鍙互鏇寸畝鍗曚竴鐐? 鍙鍏堣皟鐢ㄧ埗綾葷殑OnNcHitTest(point), 鍙栧緱榪斿洖鍊? 鍦ㄥ垽鏂槸涓嶆槸HTCLIENT, 濡傛灉鏄? 鍒欒繑鍥濰TCAPTION, 鍚﹀垯鐩存帴榪斿洖鐖剁被OnNcHitTest(point)鐨勮繑鍥炲煎氨ok浜? 淇敼鍚庡涓?UINT CTimerDlg::OnNcHitTest(CPoint point) { UINT uRet = CDialog::OnNcHitTest(point); if (HTCLIENT == uRet) return HTCAPTION; return uRet; }
鍐嶇畝鍖栦竴涓? 灝辨垚榪欐牱瀛?UINT CTimerDlg::OnNcHitTest(CPoint point) { UINT uRet = CDialog::OnNcHitTest(point); return (HTCLIENT == uRet) ? HTCAPTION : uRet; }
]]> 鍙瓑寰呰鏃跺櫒鍐呮牳瀵硅薄 http://m.shnenglu.com/jianc/archive/2012/05/10/174491.htmljianc jianc Thu, 10 May 2012 12:38:00 GMT http://m.shnenglu.com/jianc/archive/2012/05/10/174491.html http://m.shnenglu.com/jianc/comments/174491.html http://m.shnenglu.com/jianc/archive/2012/05/10/174491.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/174491.html http://m.shnenglu.com/jianc/services/trackbacks/174491.html 涔嬪墠瀛︿範win32 platform sdk緙栫▼鐨勬椂鍊? 鏈夊鍒頒竴涓鏃跺櫒鐨勪笢瑗? 閭d釜鎸虹畝鍗曠殑, 灝辨槸璋冪敤SetTimer鍒涘緩涓涓熀浜庢煇涓獥鍙e洖璋冪殑璁℃椂鍣? 鏃㈤棿闅旀椂闂翠嬌紿楀彛鏀跺埌WM_TIMER娑堟伅, 鎴栭棿闅旀椂闂? 璋冪敤鎴戜滑鑷繁瀹氫箟鐨勪竴涓洖璋冨嚱鏁? 鍒涘緩鍙瓑寰呰鏃跺櫒鍐呮牳瀵硅薄, 鍙互瀹炵幇綾諱技鍔熻兘, 鐜板湪, 涓嬭竟緇欏嚭濡備綍浣跨敤鍙瓑寰呰鏃跺櫒鍐呮牳瀵硅薄1.CreateWatchDogTimer
HANDLE CreateWatchDogTimer( LPCWSTR pszWatchDogName, DWORD dwPeriod, DWORD dwWait, DWORD dwDfltAction, DWORD dwParam, DWORD dwFlags );
2.SetWaitableTimerBOOL WINAPI SetWaitableTimer( __in HANDLE hTimer, __in const LARGE_INTEGER * pDueTime, __in LONG lPeriod, __in_opt PTIMERAPCROUTINE pfnCompletionRoutine, __in_opt LPVOID lpArgToCompletionRoutine, __in BOOL fResume );
CreateWatchDogTimer鍑芥暟灝辨槸鍒涘緩涓涓彲絳夊緟浜嬩歡鍐呮牳瀵硅薄 SetWaitableTimer鍑芥暟灝辨槸璁劇疆鍐呮牳瀵硅薄鐨勮Е鍙戞椂闂村拰鏃墮棿闂撮殧 搴熻瘽涓嶅璇翠簡, 榪欓噷鐩存帴涓婁唬鐮?br />void CDialogDemoDlg::OnBtnCreateTimer() { SYSTEMTIME st; st.wYear = 2012 ; st.wDay = 10 ; st.wDayOfWeek = 0 ; st.wHour = 20 ; st.wMilliseconds = 0 ; st.wMinute = 16 ; st.wMonth = 5 ; st.wSecond = 0 ; FILETIME localft; FILETIME utc; SystemTimeToFileTime( & st, & localft); LocalFileTimeToFileTime( & localft, & utc); LARGE_INTEGER liUTC; liUTC.LowPart = utc.dwLowDateTime; liUTC.HighPart = utc.dwHighDateTime; m_Timer = CreateWaitableTimer(NULL, FALSE, NULL); SetWaitableTimer(m_Timer, & liUTC, 10 * 1000 , NULL, NULL, FALSE); } void CDialogDemoDlg::ThreadProc2(CDialogDemoDlg * pDlg) { while ( 1 ) { DWORD ret = WaitForSingleObject(pDlg -> m_Timer, INFINITE); if (WAIT_OBJECT_0 == ret) { AfxMessageBox( " 鍙瓑寰呬簨浠跺唴鏍稿璞¤Е鍙? " ); } } }
ThreadProc2鏄竴涓嚎紼? 褰撴椂闂翠竴鍒? WaitForSingleObject灝變細榪斿洖, 鍥犱負榪欓噷鍒涘緩鐨勬槸涓涓嚜鍔ㄥ浣嶅唴鏍稿璞? 璇翠互WaitForSingleObject榪斿洖鏄細鑷姩鎶婂唴鏍稿璞″浣? 榪欓噷涓烘紨紺? 鍐欎簡涓寰幆, 鎵浠? 涓嬩竴嬈¤皟鐢╓aitForSingleObject鏃? 濡傛灉鏃墮棿鏈埌, 綰跨▼浠葷劧浼氳鎸傝搗. 鍏蜂綋鐢ㄦ硶緇嗚妭, MSDN 鍙傝? windows鏍稿績緙栫▼ ]]> MFC闈炴ā鎬佸璇濇閿姣?/title> http://m.shnenglu.com/jianc/archive/2012/05/07/173914.htmljianc jianc Mon, 07 May 2012 09:00:00 GMT http://m.shnenglu.com/jianc/archive/2012/05/07/173914.html http://m.shnenglu.com/jianc/comments/173914.html http://m.shnenglu.com/jianc/archive/2012/05/07/173914.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/173914.html http://m.shnenglu.com/jianc/services/trackbacks/173914.html 闈炴ā鎬佸璇濇闇瑕侀噸杞絆nCanel鏂規硶, 騫惰皟鐢―estroyWindow, 涓斾笉鑳借皟鐢ㄥ熀綾葷殑OnCanel 閲嶈澆PostNcDestroy, 闇瑕乨elete鎺塼his鎸囬拡// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CDlgTest)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
virtual void PostNcDestroy(); //}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CDlgTest)
virtual void OnOK(); virtual void OnCancel(); //}}AFX_MSG
void CDlgTest::OnOK() { // TODO: Add extra validation here } void CDlgTest::OnCancel() { DestroyWindow(); } void CDlgTest::PostNcDestroy() { // TODO: Add your specialized code here and/or call the base class CDialog::PostNcDestroy(); delete this; }
]]> 鐢ˋTL鍐機OM紼嬪簭 http://m.shnenglu.com/jianc/archive/2012/04/29/173106.htmljianc jianc Sat, 28 Apr 2012 18:20:00 GMT http://m.shnenglu.com/jianc/archive/2012/04/29/173106.html http://m.shnenglu.com/jianc/comments/173106.html http://m.shnenglu.com/jianc/archive/2012/04/29/173106.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/173106.html http://m.shnenglu.com/jianc/services/trackbacks/173106.html 浠婂ぉ娌′簨, 鐪嬩簡涓婣TL(Active Template Library), 璺熺潃緗戜笂鐨勫叆闂ㄥ涔犺祫鏂欒嚜宸辯収鐚敾铏? 緇撴灉涓涓嬪瓙灝眔k浜? 緙栬瘧濂? 鍦ㄥ垱寤轟竴涓猼est宸ョ▼鍘昏皟鐢ㄨ繖涓粍浠剁殑鎺ュ彛鍑芥暟, 涓鍒囬『鍒? ps:浠ュ悗鐢ˋTL鍐機OM緇勪歡, 鐖芥姝?br />ps:鏈夌┖鎶奀OM鎶鏈唴騫曠湅瀹?br /> ]]> Dll涓紑鍚叡浜暟鎹 http://m.shnenglu.com/jianc/archive/2012/04/24/172630.htmljianc jianc Tue, 24 Apr 2012 09:35:00 GMT http://m.shnenglu.com/jianc/archive/2012/04/24/172630.html http://m.shnenglu.com/jianc/comments/172630.html http://m.shnenglu.com/jianc/archive/2012/04/24/172630.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/172630.html http://m.shnenglu.com/jianc/services/trackbacks/172630.html
#pragma data_seg( " .DataSegName " )
int ifoo;
char cfoo[ 1024 ] = { " test " };
//...
#pragma data_seg()
鐒跺悗, dll宸ョ▼閲屽垱寤轟竴涓猟ef鏂囦歡, def鏂囦歡鍐欎笂:
SECTIONS:
.DataSegName READ WRITE SHARE
.DataSegName灝辨槸鑺傝〃鐨勫悕瀛? 榪欓噷鐨凱E鏂囦歡涓垱寤轟竴涓柊鑺傝〃, 鐒跺悗def鏂囦歡鎸囨槑榪欎釜鑺傝〃涓哄叡浜妭琛? 鍗? 榪涚▼鍦ㄥ姞杞借繖涓猟ll鏂囦歡鐨勬椂鍊? 瀵硅繖涓妭琛ㄨ繘琛岀洿鎺ユ槧灝? 鑰屼笉鏄槧灝勪竴浠芥嫹璐濆壇鏈?br />
榪欐牱, 緙栬瘧濂藉伐紼嬪悗, 浣嗚繖涓猟ll鏂囦歡琚姞杞借繘榪涚▼鏃跺? 涓嶉氳繘紼嬪氨鍙互閫氳繃榪欎釜鍏變韓鏁版嵁鑺傝〃榪涜閫氳浜?br />
ps:涔嬪墠鐢ㄦ寚浠?br />
#pragma comment(linker, "/section:.DataSegName, RWS")
鑰屼笉鐢╠ef鐢蟲槑, 浣嗚繖鏍峰嵈鏄笉鑳藉.DataSegName鑺傝繘琛屾暟鎹叡浜? 涓嶆槸寰堟槑鐧?br />
榪欎笉灝辨槸瀵圭紪璇戠殑鏃跺? 緇檒ink.exe紼嬪簭浼犻掍竴涓弬鏁拌屽凡涔?
link /dll /sections:.DataSegName ...... ]]> C++Primer 璇諱功絎旇19 澶氱戶鎵垮拰铏氭嫙緇ф壙 http://m.shnenglu.com/jianc/archive/2012/03/30/169532.htmljianc jianc Fri, 30 Mar 2012 07:49:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/30/169532.html http://m.shnenglu.com/jianc/comments/169532.html http://m.shnenglu.com/jianc/archive/2012/03/30/169532.html#Feedback 5 http://m.shnenglu.com/jianc/comments/commentRss/169532.html http://m.shnenglu.com/jianc/services/trackbacks/169532.html 1.铏氭嫙緇ф壙 --緇ф壙浜嗗涓熀綾誨疄渚? 浣嗗彧闇瑕佷竴浠藉崟鐙殑鍏變韓瀹炰緥 2.瀵逛簬涓涓被鐨勫熀綾葷殑鏁扮洰, c++娌℃湁闄愬埗(鍙互澶氱戶鎵? 涓や釜鍩虹被鏄渶甯歌鐨? 涓涓熀綾誨父甯哥敤浜庤〃紺轟竴涓叡鏈夋娊璞℃帴鍙? 絎簩涓熀綾繪彁渚涙槸鏈夌殑瀹炵幇 浠庣涓変釜鎴栨洿澶氫釜鐩存帴鍩虹被緇ф壙鑰屾潵鐨勬淳鐢熺被閬靛驚mixin-based璁捐椋庢牸 3.鍩虹被鏋勯犲嚱鏁拌璋冪敤鐨勯『搴忎互媧劇敓琛ㄤ腑澹版槑鐨勯『搴忎負鍑?/span>4.鍦ㄥ緇ф壙涓? 媧劇敓綾誨彲浠ヤ粠涓や釜鎴栬呮洿澶氫釜鍩虹被涓戶鎵垮悓鍚嶇殑鎴愬憳 --鐩存帴璁塊棶鏄簩涔夌殑, 灝嗗鑷寸紪璇戞椂鍒婚敊璇? 鎵浠ヨ鏄劇ず鎸囨槑璋冪敤鍝釜鍩虹被鐨勫摢涓垚鍛?Base::member 5.public媧劇敓琚О涓虹被鍨嬬戶鎵?type inheritance) --媧劇敓綾繪槸鍩虹被鐨勫瓙綾誨瀷 鎻愪緵浜嗚緝涓鑸殑鍩虹被鐨勪竴縐嶇壒鍖?/span>6.private媧劇敓琚О涓哄疄鐜扮戶鎵?implementation hinheritance) --媧劇敓綾諱笉鐩存帴鏀寔鍩虹被鐨勫叕鏈夋帴鍙? 鎻愪緵浜嗚嚜宸辯殑鍏湁鎺ュ彛, 閲嶇敤鍩虹被鐨勫疄鐜?/span> private鍩虹被鏀炬槧浜嗕竴縐?騫墮潪鍩轟簬瀛愮被鍨嬪叧緋?鐨勭戶鎵垮艦寮? 鍩虹被鐨勬暣涓叕鏈夋帴鍙e湪媧劇敓綾諱腑鍙樻垚private 7.瀵逛簬is-a瀛愮被鍨嬪叧緋繪潵璇? public緇ф壙鏄竴涓緢鏈夊埄鐨勬満鍒?/span>8.has-a鍏崇郴涓鑸敱緇勫悎(composition)鑰屼笉鏄戶鎵挎潵鏀寔 --浣夸竴涓被縐頒負鍙︿竴涓被鐨勬垚鍛?/span> a:濡傛灉鎴戜滑甯屾湜鏀瑰啓涓涓被鐨勮櫄鎷熷嚱鏁? 鍒欏繀欏諱嬌鐢ㄧ鏈夌戶鎵胯屼笉鏄嬌鐢ㄧ粍鍚?/span> b:濡傛灉鎴戜滑甯屾湜涓涓被鑳藉寮曠敤"涓涓寘鍚縐嶅彲鑳界被鍨嬬殑灞傛緇撴瀯"涓殑涓涓被, 閭d箞灝卞繀欏婚氳繃寮曠敤浣跨敤緇勫悎 c:濡傛灉鍙槸甯屾湜綆鍗曠殑閲嶇敤瀹炵幇, 鍒欐寜鍊肩粍鍚堟瘮緇ф壙鏇村ソ d:濡傛灉甯屾湜瀵硅薄鐨勮繜緙撳瀷鍒嗛厤, 鎸夊紩鐢?浣跨敤涓涓寚閽?緇勫悎閫氬父鏄竴涓笉鎯崇殑璁捐閫夋嫨 9.鍏嶉櫎(exempting)涓埆鎴愬憳鐨勭鏈夌戶鎵垮獎鍝?/span> 浠ョ鏈夋柟寮忕戶鎵? 鍩虹被鐨勬墍鏈塸rotected鍜宲ublic鎴愬憳鍏ㄨ緇ф壙涓哄瓙綾葷殑縐佹湁鎴愬憳 綾昏璁¤呭彲浠ラ拡瀵瑰熀綾葷殑涓埆鎴愬憳, 鏄叾鍏嶉櫎闈炲叕鏈夋淳鐢熺殑褰卞搷: class CSub: private CBase { public: using CBase::Member; }; 鍏嶉櫎涓埆鎴愬憳鐨勫彟涓涓師鍥犳槸鍏佽鍚庣畫鐨勬淳鐢熺被璁塊棶縐佹湁鍩虹被鐨刾rotected鎴愬憳 媧劇敓綾誨彧鑳藉皢緇ф壙寰楀埌鐨勬垚鍛樻仮澶嶅埌鍘熸潵鐨勮闂駭鍒? 璇ヨ闂駭鍒笉鑳芥瘮鍩虹被涓師鏉ユ寚瀹氱殑綰у埆鏇翠弗鏍兼垨鏇翠笉涓ユ牸 10.protected緇ф壙 --鍩虹被鐨勬墍鏈夊叕鏈夋垚鍛橀兘鎴愪負媧劇敓綾葷殑protected鎴愬憳 11.瀵硅薄緇勫悎鏈変袱縐嶅艦寮?/span> a:鎸夊肩粍鍚?Composition by value) b:鎸夊紩鐢ㄧ粍鍚?Composttion by reference) 12.铏氭嫙緇ф壙(virtual inheritance) --鍦ㄨ櫄鎷熺戶鎵夸笅, 鍙湁涓涓叡浜殑鍩虹被瀛愬璞¤緇ф壙, 鑰屾棤璁鴻鍩虹被鍦ㄦ淳鐢熷眰嬈′腑鍑虹幇澶氬皯嬈?/span> 鍏變韓鐨勫熀綾誨瓙瀵硅薄琚О涓鴻櫄鎷熷熀綾?vitual base class) 鍦ㄨ櫄鎷熺戶鎵夸笅, 鍩虹被瀛愬璞$殑澶嶅埗鍙婄敱姝ゅ紩璧風殑浜屼箟鎬ч兘琚彇娑堜簡 13.铏氭嫙緇ф壙鐨勮娉? CSub: public virtual CBase1, public virtual CBase2 {...}; virtual 鍜?public鐨勯『搴忎笉閲嶈
]]> C++Primer 璇諱功絎旇18 綾葷戶鎵垮拰瀛愮被鍨?/title> http://m.shnenglu.com/jianc/archive/2012/03/30/169501.htmljianc jianc Fri, 30 Mar 2012 03:59:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/30/169501.html http://m.shnenglu.com/jianc/comments/169501.html http://m.shnenglu.com/jianc/archive/2012/03/30/169501.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/169501.html http://m.shnenglu.com/jianc/services/trackbacks/169501.html 1.緇ф壙(inheritance) 2.c++閫氳繃綾繪淳鐢?class derivation)鐨勬満鍒舵潵鏀寔緇ф壙 3.鍩虹被(base class) 4.媧劇敓綾?derived class) 5.鍩虹被鍜屾淳鐢熺被瀹炰緥鐨勯泦鍚堢О涓虹被緇ф壙灞傛緇撴瀯(hierarchy) 6.濡傛灉鍩虹被鍜屾淳鐢熺被鍏變韓鐩稿悓鐨勫叡鏈夋帴鍙? 鍒欐淳鐢熺被琚О鍋氬熀綾葷殑瀛愮被鍨?subtype) 7.鍩虹被鎸囬拡鎴栧紩鐢ㄥ彲浠ョ洿鎺ュ紩鐢ㄥ叾浠諱綍媧劇敓鐨勭被, 澶氭?polymorphism) 8.鍦ㄨ繍琛屾椂鍒婚渶瑕佽В鏋愬嚭琚皟鐢ㄧ殑鍑芥暟, 榪欎釜瑙f瀽榪囩▼琚О涓哄姩鎬佺粦瀹?dynamic bindng) --緙虹渷鎯呭喌涓? 鍑芥暟瀹炲湪緙栬瘧鏃跺埢琚潤鎬佽В鏋愮殑 9.c++涓? 閫氳繃涓縐嶈縐頒負铏氭嫙鍑芥暟(virtual function)鐨勬満鍒舵潵鏀寔鍔ㄦ佺粦瀹? 閫氳繃闆嗘垚鍜屽姩鎬佺粦瀹? 瀛愮被鍨嬪鎬佹т負闈㈠悜瀵硅薄鐨勭▼搴忚璁℃彁渚涗簡鍩虹 10.闈㈠悜瀵硅薄鐨勭▼搴忚璁℃彁渚涗簡涓縐嶆柟妗? 鎶婄被鍨嬭В鏋愮殑璐熸媴浠庣▼搴忓憳鐨勮韓涓婅漿縐誨埌緙栬瘧鍣ㄤ笂 11.綾葷戶鎵垮眰嬈$粨鏋勭殑涓昏濂藉鏄? 鎴戠洘鍙互閽堝鎶借薄鍩虹被鐨勫叡鏈夋帴鍙h繘紼嬬紪紼? 鑰屼笉鏄拡瀵圭粍鎴愮戶鎵垮眰嬈$殑涓埆綾誨瀷 鐢ㄦ埛浠g爜鍙互涓嶅彈璇█鍙樺寲鐨勫獎鍝?--澶氭佸拰鍔ㄦ佺粦瀹?/span>12.鍦╟++涓? 澶氭佹у彧瀛樺湪浜庡瓙綾葷戶鎵垮眰嬈′腑 --void*鍨嬬殑鎸囬拡鍙互琚弿榪頒負澶氭? 浣嗘槸璇█鏈韓騫舵病鏈夋樉紺虹殑鏀寔浠栦滑, 蹇呴』鐢辯▼搴忓憳鑷繁鏉ョ鐞?/span> c++璇█閫氳繃鍑犵鏂瑰紡鏀寔澶氭佹?/span> 閫氳繃涓涓殣寮忚漿鎹? 浠?媧劇敓綾繪寚閽堟垨寮曠敤"杞埌"鍏跺叡鏈夊熀綾葷被鍨嬬殑鎸囬拡鎴栧紩鐢? 閫氳繃铏氭嫙鍑芥暟鐨勬満鍒?/span> 閫氳繃dynamic_cast鍜宼ypeid鎿嶄綔絎?/span> if(SubClass* pSub = dynamic_cast<SubClass*>(pObj)) ... 13.鎶借薄鍩虹被(abstract base class) 14.瀹炰綋鍩虹被(concrete base class) 15.綰櫄鎷熷嚱鏁?pure virtual function) 16.瑕嗙洊(override) 17.c++璇█涓烘垜浠彁渚涗簡涓縐嶈娉曠粨鏋? 閫氳繃瀹冨彲浠ユ寚鏄? 涓涓櫄鎷熷嚱鏁板彧鏄彁渚涗簡涓涓彲浠ヨ瀛愮被鏀瑰啓鐨勬帴鍙?/span>18.浼犻掔粰緙虹渷鍑芥暟鐨勫間笉鏄湪榪愯鏃跺埢鍐沖畾, 鑰屾槸鍦ㄧ紪璇戞椂鍒繪牴鎹璋冪敤鍑芥暟鐨勫璞$殑綾誨瀷鍐沖畾 19.铏氭嫙鏋愭瀯鍑芥暟 --涓昏鏄負浜嗚兘澶熺敤delete閿姣佸熀綾葷殑鏃跺欎篃鑳藉淇濊瘉璋冪敤媧劇敓綾葷殑鏋愭瀯鍑芥暟, 瑕佷笉鐒跺畠鍙槸璋冪敤鍩虹被鐨勬瀽鏋勫嚱鏁拌屽凡
]]> C++Primer 璇諱功絎旇17 綾繪ā鏉?/title> http://m.shnenglu.com/jianc/archive/2012/03/29/169443.htmljianc jianc Thu, 29 Mar 2012 09:20:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/29/169443.html http://m.shnenglu.com/jianc/comments/169443.html http://m.shnenglu.com/jianc/archive/2012/03/29/169443.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/169443.html http://m.shnenglu.com/jianc/services/trackbacks/169443.html 1.闃熷垪(queue) --涓撻棬鐢ㄤ簬瀵硅薄闆嗗悎鐨勬暟鎹粨鏋? 瀵硅薄琚姞鍏ュ埌闃熷垪鐨勫熬閮? 鑰屼粠闃熷垪鐨勯《閮ㄨ鍒犻櫎(first in first out FIFO) 2.浣嶅崟涓被鍨嬫彁渚涙墜宸ョ敓鎴愮殑鎷瘋礉鏄竴涓棤浼戞鐨勮繃紼? 涔熸槸涓涓棤闄愬鏉傜殑緇存姢榪囩▼ 3.妯℃澘鍙傛暟琛?template parameter list) --template<xxx> xxx灝辨槸妯℃澘鍙傛暟琛?/span>4.妯℃澘鐨勭被鍨嬪弬鏁?type parameter)鐢卞叧閿瓧class鎴栧叧閿瓧typename鍙婂叾鍚庣殑琛ㄧず絎︽瀯鎴?/span>5.姣忎釜妯℃澘鍙傛暟鍓嶉潰閮藉繀欏繪湁鍏抽敭瀛梒lass鎴杢ypename 6.妯℃澘闈炵被鍨嬪弬鏁?nontype parameter)鐢變竴涓櫘閫氬弬鏁板0鏄庢瀯鎴? 涓涓潪綾誨瀷鍙傛暟鍙槸璇ュ弬鏁頒唬琛ㄤ簡涓涓綔鍦ㄧ殑鍊? 鑰岃繖涓煎張浠h〃綾繪ā鏉垮畾涔変腑鐨勪竴涓弬閲? template<class Type, int size = 1024> class Buffer; //濡傛灉妯℃澘瀹炰緥鐨勫悕瀛楁病鏈夋寚瀹欱uffer鐨勫ぇ灝? 鍒欏疄渚嬪寲Buffer鐨勫ぇ灝忔槸1024 7.綾誨瀷杞崲鐨勮繃紼嬭縐頒負妯℃澘瀹炰緥鍖?template instantiation) 浠庨氱敤鐨勭被妯℃澘瀹氫箟涓敓鎴愮被鐨勮繃紼?/span>8.妯℃澘鍙傛暟鐨勭己鐪佸?/span> template<class Type = string, int size> class Buffer; 9.綾繪ā鏉挎垚鍘熷嚱鏁板彲浠ュ啀綾繪ā鏉跨殑瀹氫箟涓畾涔? 璇ユ垚鍛樺嚱鏁版槸inline鎴愬憳鍑芥暟; 涔熷彲浠ュ畾涔夊湪綾繪ā鏉垮畾涔変箣澶?/span>10.c++鐨勬ā鏉跨紪璇戞ā寮?template compilation model) ]]> C++Primer 璇諱功絎旇16 閲嶈澆鎿嶄綔絎﹀拰鐢ㄦ埛瀹氫箟杞崲 http://m.shnenglu.com/jianc/archive/2012/03/21/168495.htmljianc jianc Wed, 21 Mar 2012 06:15:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/21/168495.html http://m.shnenglu.com/jianc/comments/168495.html http://m.shnenglu.com/jianc/archive/2012/03/21/168495.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/168495.html http://m.shnenglu.com/jianc/services/trackbacks/168495.html 1.鍋氭搷浣滄暟鏄綾葷被瀵硅薄鏄? 鎵嶄細鑰冭檻浣跨敤綾繪垚鍛橀噸杞芥搷浣滅 2.c++瑕佹眰, 璧嬪?=), 涓嬫爣([]), 璋冪敤(()), 鍜屾垚鍛樿闂澶?->)鎿嶄綔絎﹀繀欏昏瀹氫箟紼崇被鎴愬憳鎿嶄綔絎? 浠諱綍鎶婅繖浜涙搷浣滅瀹氫箟涓哄悕瀛楃┖闂存垚鍛樼殑瀹氫箟閮戒細琚?/span>
鏍囪涓虹紪璇戞椂鍒婚敊璇?/span>3.c++棰勫畾涔夊彲閲嶈澆鐨勬搷浣滅: + - * / % ^ & | ~ ! , = < > <= >= ++ -- << >> == != && || += -= /= %= ^= &= |= *= <<= >>= [] () -> ->* new new[] delete delete[] 4.瀵逛簬鍐呯疆綾誨瀷鐨勬搷浣滅, 瀹冪殑棰勫畾涔夋剰涔変笉鑳借鏀瑰彉 5.棰勫畾涔夌殑鎿嶄綔絎︿紭鍏堢駭涓嶈兘琚敼鍙?/span>6.闄や簡operator()澶? 瀵瑰叾浠栭噸杞芥搷浣滅鎻愪緵緙虹渷瀹炲弬閮芥槸闈炴硶鐨?/span>
]]>C++Primer 璇諱功絎旇15 綾葷殑鍒濆鍖栬祴鍊煎拰鏋愭瀯 http://m.shnenglu.com/jianc/archive/2012/03/21/168484.htmljianc jianc Wed, 21 Mar 2012 05:04:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/21/168484.html http://m.shnenglu.com/jianc/comments/168484.html http://m.shnenglu.com/jianc/archive/2012/03/21/168484.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/168484.html http://m.shnenglu.com/jianc/services/trackbacks/168484.html
1.緙虹渷鎯呭喌涓? 鐢ㄤ竴涓被鐨勫璞″垵濮嬪寲鍙︿竴涓璞? 鎴栬呭悜璇ョ被鍙︿竴涓璞¤祴鍊? 閮界敱緙虹渷鐨勬寜鎴愬憳璇箟(default memberwise semantics)鏀寔
鍦ㄦ煇浜涙儏鍐典笅, 瀵圭被鐨勫畨鍏ㄦу拰澶勭悊姝g‘鎬ф槸涓嶅鐨? 闇瑕佺被璁捐鑰呮彁渚涚壒孌婄殑鎷瘋礉鏋勯犲嚱鏁?copy constructor)鍜屾嫹璐濊祴鍊兼搷浣滅(copy assignment
operator)鐨勫畾涔?/span>
2.new綾誨璞?--鍙湁new琛ㄨ揪寮忔垚鍔熺殑鐢寵鍒扮┖闂村唴瀛? 鏋勯犲嚱鏁版墠浼氳璋冪敤
3.鏋勯犲嚱鏁板畾涔変負inline鏃? 鍒涘緩瀵硅薄鏄細鍦ㄨ皟鐢ㄧ偣灞曞紑鏋勯犲嚱鏁?/span>
4.鎴愬憳鍒濆鍖栧垪琛?member initialization list)
5.鏋勯犲嚱鏁頒笉鑳界敤const鎴杤olatile鍏抽敭瀛楁潵澹版槑
涓涓猚onst綾誨璞″湪"浠庡叾鏋勯犲嚱鏁板畬鎴愬埌鏋愭瀯鍑芥暟寮濮?榪欐鏃墮棿鍐呮墠琚涓烘槸const, volatile綾誨璞′篃涓鏍?/span>
6.explicit淇グ絎﹂氱煡緙栬瘧鍣ㄤ笉瑕佹彁渚涢殣寮忚漿鎹?/span>
void print(const CTest &test);
//...
print("oops"); //榪欑璋冪敤浼氭妸"oops"杞崲鎴愪竴涓狢Test瀵硅薄
緙虹渷鎯呭喌涓? 鍗曞弬鏁版瀯閫犲嚱鏁?鎴栬呮湁澶氫釜鍙傛暟, 闄や簡絎竴涓弬鏁板, 鍏朵粬閮芥湁緙虹渷瀹炲弬)琚敤浣滆漿鎹㈢
鏃犳剰鐨勯殣寮忕被杞崲, 鏄緢闅捐窡韙殑閿欒!, 鍏抽敭瀛梕xplicit琚紩鍏ュ埌鏍囧噯c++涓? 浠ュ府鍔╂垜浠姂鍒惰繖縐嶄笉鍙楁榪庣殑緙栬瘧杈呭姪琛屼負
explicit鍙兘琚簲鐢ㄥ湪鏋勯犲嚱鏁頒笂
7.緙虹渷鏋勯犲嚱鏁版槸涓嶉渶瑕佺敤鎴鋒寚瀹氬疄鍙傚氨鑳藉琚皟鐢ㄧ殑鏋勯犲嚱鏁? --騫朵笉鎰忓懗鐫瀹冧笉鑳芥帴鍙楀疄鍙? 鍙剰鍛崇潃鏋勯犲嚱鏁扮殑姣忎釜鍙傛暟閮芥湁涓涓己鐪佸間笌涔嬪叧鑱?/span>
8.闄愬埗瀵硅薄鍒涘緩 --鎶婄浉鍏蟲瀯閫犲嚱鏁版斁鍒伴潪鍏湁璁塊棶鍖哄唴, 浠庤岄檺鍒舵垨鏄劇ず紱佹鏌愪簺褰㈠紡鐨勫鍒涘緩鍔ㄤ綔
鍦ㄥ疄闄呯殑c++紼嬪簭涓? 闈炲叕鏈夌殑鏋勯犲嚱鏁頒富瑕佺敤澶勬槸:
闃叉鐢ㄤ竴涓被瀵硅薄鎯寵綾誨彟涓涓璞″仛鎷瘋礉
鎸囧嚭鍙湁褰撲竴涓被鍦ㄧ戶鎵垮眰嬈′腑琚敤浣滃熀綾? 鑰屼笉鑳界洿鎺ヨ搴旂敤紼嬪簭鎿嶇旱鏃? 鏋勯犲嚱鏁版墠鑳借璋冪敤
9.鎷瘋礉鏋勯犲嚱鏁?--鐢ㄤ竴涓被瀵硅薄鍒濆鍖栬綾葷殑鍙︿竴涓璞¤縐頒負緙虹渷鎸夋垚鍛樺垵濮嬪寲(default memberwise initialization)
涓涓被瀵硅薄鎯寵綾葷殑鍙︿竴涓璞′綔鎷瘋礉鏄氳繃渚濇鎷瘋礉姣忎釜闈為潤鎬佹暟鎹垚鍛樻潵瀹炵幇
綾昏璁¤呭彲浠ラ氳繃鎻愪緵鐗規畩鐨勬嫹璐濇瀯閫犲嚱鏁?copy constructor)鏉ユ敼鍙樼己鐪佺殑琛屼負
鎷瘋礉鏋勯犲嚱鏁頒笉涓瀹氭槸const, 浣嗗畠鍗村繀欏繪槸寮曠敤
10.鏃犺浣曟椂, 褰撳湪涓涓嚱鏁板唴鍒犻櫎涓涓嫭绔嬬殑鍫嗗璞℃椂, 鏈濂戒嬌鐢╝uto_ptr綾誨璞¤屼笉鏄竴涓疄闄呯殑鎸囬拡
濡傛灉delete琛ㄨ揪寮忓け璐? 濡備竴涓紓甯歌鎶涘嚭, 浼氬埌鏃跺唴瀛樻硠闇?寮傚父鎶涘嚭, 璺寵繃浜哾elete鎿嶄綔?), 涓嶄細璋冪敤鏋愭瀯鍑芥暟
鎵浠ュ緩璁敤auto_ptr鏅鴻兘鎸囬拡
11.瀵逛簬鍦ㄥ爢涓垎閰嶇殑綾誨璞℃暟緇勭殑鍏冪礌, 鎴戜滑娌℃湁鍔炴硶鎻愪緵涓緇勬樉紺虹殑鍊兼潵鍋氬垵濮嬪寲, 濡傛灉緇嗗寲鏀寔閫氳繃new琛ㄨ揪寮忓垎閰嶆暟緇? 鍒欑被蹇呴』鎻愪緵涓涓己鐪佺殑鏋?/span>
閫犲嚱鏁? 鎴栦笉鎻愪緵鏋勯犲嚱鏁?/span>
12.鐢ㄤ竴涓被瀵硅薄鍒濆鍖栧彟涓涓被瀵硅薄, 縐頒負鎸夋垚鍛樺垵濮嬪寲(default memberwise initialization)
鍙戠敓鍦?鐢ㄤ竴涓被瀵硅薄鏄劇ず鐨勫垵濮嬪寲鍙︿竴涓璞?/span>
鎶婁竴涓被瀵硅薄浣滀負瀹炲弬浼犻掔粰涓涓嚱鏁?/span>
鎶婁竴涓被瀵硅薄浣滀負涓涓嚱鏁扮殑榪斿洖鍊間紶閫掑洖鏉?/span>
闈炵┖欏哄簭瀹瑰櫒綾誨瀷鐨勫畾涔?/span>
鎶婁竴涓被瀵硅薄鎻掑叆鍒頒竴涓鍣ㄧ被鍨嬩腑
13.鎴愬憳綾誨璞″垵濮嬪寲
14.緙虹渷鎸夋垚鍛樿祴鍊?default memberwise assignment) --鐢ㄤ竴涓被瀵硅薄鍚戣綾葷殑鍙︿竴涓璞$殑璧嬪兼搷浣?/span>
鐢ㄩ殣寮忕殑鎷瘋礉璧嬪兼搷浣滅
涓鑸潵鎵, 濡傛灉緙虹渷鐨勬寜鎴愬憳鍒濆鍖栧浜庝竴涓被涓嶅悎閫? 鍒欑己鐪佺殑鎸夋垚鍛樿祴鍊間篃涓嶅悎閫?/span>
閫氳繃鎻愪緵涓涓幇瀹炵殑鎷瘋礉璧嬪兼搷浣滅鐨勫疄渚? 鍙互鏀瑰彉緙虹渷鐨勬寜鎴愬憳璧嬪?/span>
娉ㄦ剰瑕侀槻姝竴涓被瀵硅薄鍚戣嚜宸辮祴鍊?--瀵逛簬"鍏堥噴鏀句笌璇ュ璞″綋鍓嶇浉鍏崇殑璧勬簮, 浠ヤ究鍒嗛厤涓庤鎷瘋礉瀵硅薄鐩稿叧璧勬簮"榪欐牱鐨勬嫹璐濊祴鍊兼搷浣滅, 鎷瘋礉鑷韓灝ゅ叾涓?/span>
鍚堥?/span>
褰撲竴涓被瀵硅薄琚祴鍊肩粰璇ョ被鐨勫彟涓涓璞℃槸:
a媯鏌ヨ綾? 鍒ゆ柇鏄惁鎻愪緵浜嗕竴涓幇瀹炵殑鎷瘋礉璧嬪兼搷浣滅
b濡傛灉鏄? 媯鏌ヨ闂潈闄? 鍒ゆ柇鏄惁鍙互琚皟鐢?/span>
c濡傛灉涓嶈兘琚皟鐢? 緙栬瘧閿欒, 鍚﹀垯鎵ц榪欎釜璋冪敤
d濡傛灉璇ョ被娌℃湁鎻愪緵鏄劇ず鐨勬嫹璐濊祴鍊兼搷浣滅, 鍒欐墽琛屾寜緙虹渷鎴愬憳璧嬪?/span>
e鍦ㄧ己鐪佹寜鎴愬憳璧嬪間笅, 姣忎釜鍐呯疆綾誨瀷鎴栧鍚堢被鍨嬬殑鏁版嵁鎴愬憳琚祴鍊肩粰鐩稿簲鐨勬垚鍛?/span>
f瀵逛簬姣忎釜綾繪垚鍛樺璞? 閫掑綊鎵цa鍒癴姝? 鐭ラ亾鎵鏈夊唴緗垨澶嶅悎綾誨瀷鐨勬暟鎹垚鍛橀兘琚祴鍊?/span>
濡傛灉甯屾湜瀹屽叏紱佹鎸夋垚鍛樻嫹璐濈殑琛屾枃, 灝嗘搷浣滅澹版槑涓簆rivate騫朵笖涓嶆彁渚涘疄闄呭畾涔夊嵆鍙?/span>
涓鑸潵璇? 搴旇灝嗘嫹璐濇瀯閫犲嚱鏁板拰鎷瘋礉璧嬪兼搷浣滆涓轟竴涓釜浣撳崟鍏?/span>
15.C++璇█涓嶈兘鏈夋晥鍦拌繑鍥炰竴涓被瀵硅薄, 榪欒瑙嗕負c++璇█鐨勪竴涓噸澶х己闄?/span>
16.c++綾誨璞$殑鍒濆鍖栨繪槸姣旇祴鍊兼洿鏈夋晥
]]> MFC澶氱嚎紼?/title> http://m.shnenglu.com/jianc/archive/2012/03/20/168426.htmljianc jianc Tue, 20 Mar 2012 12:02:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/20/168426.html http://m.shnenglu.com/jianc/comments/168426.html http://m.shnenglu.com/jianc/archive/2012/03/20/168426.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/168426.html http://m.shnenglu.com/jianc/services/trackbacks/168426.html mfc涓嬪綰跨▼緙栫▼
1.mfc鏀寔涓ょ綰跨▼
鐢ㄦ埛鐣岄潰綰跨▼
宸ヤ綔綰跨▼
2.mfc涓墍鏈夌嚎紼嬮兘鏄敱CWinThread瀵硅薄琛ㄧず
CWinThread鏄敤鎴鋒帴鍙g嚎紼嬬殑鍩虹被, CWinApp灝辨槸浠嶤WinThread媧劇敓鍑烘潵鐨?/span>
鍦ㄥ啓鐢ㄦ埛鎺ュ彛綰跨▼鏃? 涔熻浠嶤WinThread綾繪淳鐢熷嚭鑷繁鐨勭嚎紼嬬被
鍙互璋冪敤AfxBeginThread鍑芥暟, 浼氬垱寤篊WinThread瀵硅薄
3.緙栧啓鏄兂宸ヤ綔綰跨▼鐨勬帶鍒跺嚱鏁? 鎺у埗鍑芥暟鐨勫師鍨?
UINT ControlFunctionName(LPVOID pParam); //綰跨▼鍥炶皟
4.綰跨▼璋冪敤AfxBeginThread鍑芥暟灝卞彲浠ュ垱寤烘柊鐨勭嚎紼?/span>
5.鍒涘緩騫跺惎鍔ㄥ伐浣滅嚎紼?
CWinThread* AfxBeginThread(
AFX_THREADPROC pfnThreadProc,
LPVOID pParam,
int nPriority = THREAD_PRIORITY_NORMAL,
UINT nStackSize = 0,
WORD dwCreateFlags = 0,
LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL);
6.AfxEndThread緇堟綰跨▼
7.鍒涘緩鐢ㄦ埛鐣岄潰綰跨▼
浠嶤WinThread綾繪淳鐢熷嚭鑷繁鐨勭嚎紼嬬被
鏀歸犺繖涓被
鍚姩鐢ㄦ埛鐣岄潰
8.鍩虹被鐨勪竴浜涙垚鍛樺嚱鏁?
ExitInstance, 褰撶嚎紼嬮鍑烘槸, 浼氳皟鐢ㄦ墽琛屾竻鐞嗗伐浣?/span>
InitInstance, 鎵ц綰跨▼綾誨疄渚嬪垵濮嬪寲, 瀛愮被蹇呴』閲嶅啓
OnIdle, 鎵ц綰跨▼鐗瑰畾絀洪棽鏃墮棿澶勭悊
PreTranslateMessage, 榪囨護娑堟伅
Run, 鎵ц綰跨▼鍑芥暟
9.AfxBeginThread鍑芥暟鐨勫彟涓涓噸杞藉師鍨?(鐣岄潰綰跨▼)
CWinThread* AfxBeginThread(
CRuntimeClass* pThreadClass, //鐢≧UNTIME_CLASS瀹忓皢綰跨▼綾繪寚閽堣漿鎹負鎸囧悜CRuntimeClass瀵硅薄鎸囬拡
int nPriority = THREAD_PRIORITY_NORMAL,
UINT nStackSize = 0;
DWORD dwCreateFlags = 0,
LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL
);
10.緇堟綰跨▼
姝e父緇堟綰跨▼ VOID PostQuitMessage(int nExitCode);
鎻愬墠緇堟綰跨▼ 鍦ㄧ嚎紼嬪唴璋冪敤AfxEndThread鍑芥暟 VOID AfxEndThread(UINT nExitCode);
11.綰跨▼鍚屾鎶鏈?/span>
淇″彿閲?--闄愬埗浣跨敤鍏變韓璧勬簮鐨勭嚎紼嬫暟鐩?/span>
CSemaphore g_Sem(5, 5); 鏃墮棿鍐呮渶澶氬彧鏈?涓嚎紼嬭兘鍏變韓璧勬簮, 榪樺垵濮嬪紑濮嬫椂娌℃湁綰跨▼鑾峰緱淇″彿璧勬簮
涓鏃︾嚎紼嬭闂叡浜祫婧? 淇″彿閲忚鏁板櫒灝卞噺1, 鑻ュ彉涓?, 鍒欎笅鏉ュ璧勬簮鐨勮闂氨浼氳鎷掔粷, 鐭ラ亾鎸佹湁鐨勮祫婧愮嚎紼嬮噴鏀句簡璧勬簮鐨勬寔鏈夋潈
浜掓枼瀵硅薄 --鍐呮牳瀵硅薄
涓寸晫鍖?--鐢ㄦ埛妯″紡瀵硅薄 寮勪笉濂藉氨瀹規槗鍑虹幇姝婚攣, 涓嶈繃鐢ㄨ搗鏉ュ緢綆鍗? 鍙湁4涓狝PI
InitializeCriticalSection, EterCreiticalSection, LeveCriticalSection, DeleteCriticalSection
浜嬩歡瀵硅薄 --鍐呮牳瀵硅薄 鍒嗘敹宸ラ噸緗璞″拰鑷姩閲嶇疆瀵硅薄
]]> C++Primer 璇諱功絎旇14 綾?/title> http://m.shnenglu.com/jianc/archive/2012/03/13/167774.htmljianc jianc Tue, 13 Mar 2012 06:20:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/13/167774.html http://m.shnenglu.com/jianc/comments/167774.html http://m.shnenglu.com/jianc/archive/2012/03/13/167774.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167774.html http://m.shnenglu.com/jianc/services/trackbacks/167774.html 1.c++綾?--鐢ㄦ埛瀹氫箟鐨勭被鍨?user-defined type, UDT)
2.淇℃伅闅愯棌(information hiding)
3.闄や簡闈欐佹暟鎹垚鍛樺, 鏁版嵁鎴愬憳涓嶈兘鍦ㄧ被涓鏄劇ず鍦板垵濮嬪寲
4.涓涓垚鍛樺嚱鏁板彧鑳介噸杞借嚜宸辯被鐨勫叾浠栨垚鍛樺嚱鏁?/span>
5.鏁版嵁闅愯棌鐨勪紭鐐?
濡傛灉鏁版嵁鐨勮闂睘鎬ф槸縐佹湁鐨? 鍒欎竴鑸櫎浜嗙被鐨勫叡鏈夋帴鍙? 涓嶈兘鐩存帴璁塊棶縐佹湁鎴愬憳
濡傛灉鏁版嵁鐨勮闂睘鎬ф槸鍏辨湁鐨? 鍒欎換浣曞湴鏂歸兘鍙互鐩存帴璁塊棶榪欎釜鏁版嵁鎴愬憳
浣嗘槸, 濡傛灉綾葷殑瀹炵幇鍙樺姩浜? 鍗抽偅涓垚鍛樻敼鍙樹簡, 閭d箞, 濡傛灉榪欎釜鎴愬憳鏄鏈夌殑, 浣嗗叡鏈夋帴鍙f病鏀瑰彉, 鍒欎笉闇瑕佷慨鏀逛嬌鐢ㄨ繖涓被鐨勪唬鐮?/span>
濡傛灉榪欎釜鎴愬憳鏄叡鏈夌殑, 閭d箞, 鐩存帴璁塊棶榪欎釜鎴愬憳鐨勪換浣曚唬鐮侀兘闇瑕佸仛鐩稿簲鐨勬敼鍙樹簡
--鎵浠? 鏁版嵁灝佽鎬ц嚜鏈夊畠鐨勪紭鐐?/span>
6.璁塊棶闄愬畾絎?access specifier) public, private, protected
7.鍦ㄦ煇浜涙儏鍐典笅, 鍏佽鏌愪釜鍑芥暟鑰屼笉鏄暣涓▼搴忓彲浠ヨ闂被鐨勭鏈夋垚鍛? 榪欐牱鍋氫細姣旇緝鏂逛究, 鍙嬪厓(friend)鏈哄埗鍏佽涓涓被鎺堟潈鍏朵粬鐨勫嚱鏁拌闂粬鐨勯潪鍏湁
鎴愬憳
8.鍙嬪厓澹版槑浠ュ叧閿瓧friend寮澶? 鍙兘鍑虹幇鍦ㄧ被鐨勫0鏄庝腑
9.鍥犱負鍙湁褰撲竴涓被鐨勭被浣撳凡緇忓畬鏁存椂, 瀹冩墠琚涓哄凡緇忚瀹氫箟, 鎵浠ヤ竴涓被涓嶈兘鏈夎嚜韜被鍨嬬殑鏁版嵁鎴愬憳, 浣嗗彲浠ョ敤鎸囧悜鑷韓綾誨瀷鐨勬寚閽堟垨寮曠敤浣滀負鏁版嵁鎴?/span>
鍛?/span>
10.綾葷殑瀹氫箟涓嶄細寮曡搗瀛樺偍鍖哄垎閰? 鍙湁褰撳畾涔変竴涓被鐨勫璞℃椂, 緋葷粺鎵嶄細鍒嗛厤瀛樺偍鍖?/span>
11.姣忎釜綾繪垚鍛樺嚱鏁扮殑鎷瘋礉鍙湁涓浠?/span>
12.鎶婁竴涓垚鍛樺嚱鏁板0鏄庝負const鍙互淇濊瘉榪欎釜鎴愬憳鍑芥暟涓嶄慨鏀圭被鐨勬暟鎹垚鍛? 浣嗘槸, 濡傛灉璇ョ被鍚湁鎸囬拡, 閭d箞鍦╟onst鎴愬憳鍑芥暟涓氨鑳戒慨鏀規寚閽堟墍鎸囩殑瀵硅薄,
緙栬瘧鍣ㄤ笉浼氭嫻嬩負閿欒, 榪欏父甯鎬護c++鍒濆鑰呭悆鎯?/span>
13.涓轟簡鍏佽淇敼涓涓被鐨勬暟鎹垚鍛? 鍗充嬌瀹冩槸涓涓猚onst瀵硅薄鐨勬暟鎹垚鍛? 鎴戜滑涔熷彲浠ユ妸鏀規暟鎹垚鍛樺0鏄庝負mutable(鏄撳彉鐨?. mutable鏁版嵁鎴愬憳姘歌繙涓嶄細鏄?/span>
const鎴愬憳, mutable鎴愬憳涓彲浠ヨ鏇存柊
14.姣忎釜綾繪垚鍛樺嚱鏁伴兘鍚湁涓涓寚鍚戣璋冪敤瀵硅薄鐨勬寚閽? 榪欎釜鎸囬拡琚О涓簍his:
鍦ㄩ潪const鎴愬憳鍑芥暟涓? 瀹冪殑綾誨瀷鏄寚鍚戣綾葷被鍨嬬殑鎸囬拡
鍦╟onst鎴愬憳鍑芥暟涓? 鏄寚鍚慶onst綾葷被鍨嬬殑鎸囬拡
鍦╲olatile鎴愬憳鍑芥暟涓? 鏄寚鍚憊olatile綾葷被鍨嬬殑鎸囬拡
15.綾葷殑闈欐佹垚鍛樿褰撳仛璇ョ被綾誨瀷鐨勫叏灞瀵硅薄, 瀵逛簬闈為潤鎬佹垚鍛? 姣忎釜綾誨璞¢兘鏈夎嚜宸辯殑鎷瘋礉, 鑰岄潤鎬佹暟鎹垚鍛樺姣忎釜綾葷被鍨嬪彧鏈変竴涓嫹璐? 闈欐佹暟鎹垚鍛樺彧
鏈変竴浠? 璇ョ被綾誨瀷瀵規墍鏈夊璞″叡浜闂?/span>
16.鍚屽叏灞瀵硅薄鐩告瘮, 浣跨敤闈欐佹暟鎹垚鍛樻湁涓や釜浼樺娍:
闈欐佹暟鎹垚鍛樻病鏈夎繘鍏ョ▼搴忕殑鍏ㄥ眬鍚嶅瓧絀洪棿
鍙互瀹炵幇淇℃伅闅愯棌, 闈欐佹垚鍛樺彲浠ユ槸private鎴愬憳, 鑰屽叏灞瀵硅薄涓嶈兘
17.闈欐佹暟鎹垚鍛樼殑綾誨瀷鍙互鏄叾浠栨墍灞炵被, 鑰岄潪static鏁版嵁鎴愬憳鍙兘琚0鏄庝負璇ョ被鐨勫璞$殑鎸囬拡鎴栧紩鐢?/span>
18.闈欐佹暟鎹垚鍛樺彲浠ヨ浣滀負綾繪垚鍛樺嚱鏁扮殑緙虹渷瀹炲弬, 鑰岄潪static鎴愬憳涓嶈兘
19.闈欐佹垚鍛樺嚱鏁扮殑澹版槑闄や簡鍦ㄧ被浣撲腑鐨勫嚱鏁板0鏄庡姞涓婂叧閿瓧static, 浠ュ強涓嶈兘澹版槑涓篶onst鎴杤olatile涔嬪, 涓庨潪闈欐佹垚鍛樺嚱鏁扮浉鍚? 鍑虹幇鍦ㄧ被浣撳鐨勫嚱鏁?/span>
瀹氫箟涓嶈兘鎸囧畾鍏抽敭瀛梥tatic
20.闈欐佹垚鍛樻病鏈塼his鎸囬拡
21.綾繪垚鍛樼殑鎸囬拡蹇呴』鎬繪槸閫氳繃鐗瑰畾鐨勫璞℃垨鎸囧悜璇ョ被綾誨瀷鐨勫璞$殑鎸囬拡鏉ヨ闂?/span>
閽堝綾誨璞″拰寮曠敤鐨?*
閽堝鎸囧悜綾誨璞$殑鎸囬拡鐨?>*
22.瀹氫箟涓涓垚鍛樺嚱鏁版寚閽堥渶瑕佸埗瀹氬嚱鏁拌繑鍥炵被鍨? 鍙傛暟琛ㄥ拰綾?
int (CTest::*)();
int (CTest::*pmf)() = &CTest::test;
pmf = &CTest::test2;
23.闈欐佺被鎴愬憳灞炰簬璇ョ被鐨勫叏灞瀵硅薄鍜屽嚱鏁?/span>
24.鑱斿悎:涓縐嶈妭鐪佺┖闂寸殑綾?/span>
浣跨敤union鏄嵄闄╃殑, 閫氳繃涓涓笉閫傚綋鐨勬暟鎹垚鍛樹互涓虹殑鑾峰彇鍒板綋鍓嶅瓨鍌ㄥ湪union涓殑鍊糫
25.c++鏍囧噯搴撴彁渚涗簡涓涓猙itset綾繪ā鏉? 瀹冨彲浠ヨ緟鍔╂搷浣滀綅鐨勯泦鍚? 鍦ㄥ彲鑳界殑鎯呭喌涓? 搴斿敖鍙兘浣跨敤瀹冩潵鍙栦唬浣嶅煙
26.涓涓被鍙互鍦ㄥ彟涓涓被涓畾涔? 榪欐牱鐨勭被琚О涓哄祵濂楃被(nested class)
宓屽綾繪槸鍏跺鍥寸被鐨勪竴涓垚鍛?/span>
27.綾諱篃鍙互瀹氫箟鍦ㄥ嚱鏁頒綋鍐? 榪欐牱鐨勭被琚О涓哄眬閮ㄧ被(local class)
灞閮ㄧ被鐨勬垚鍛樺嚱鏁板繀欏昏瀹氫箟鍦ㄧ被瀹氫箟涓? 榪欏氨鎶婂眬閮ㄧ被鐨勬垚鍛樺嚱鏁扮殑澶嶆潅鎬ч檺鍒跺湪鍑犺浠g爜涓?/span>
]]> C++Primer 璇諱功絎旇13 娉涘瀷綆楁硶 http://m.shnenglu.com/jianc/archive/2012/03/13/167758.htmljianc jianc Tue, 13 Mar 2012 01:45:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/13/167758.html http://m.shnenglu.com/jianc/comments/167758.html http://m.shnenglu.com/jianc/archive/2012/03/13/167758.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167758.html http://m.shnenglu.com/jianc/services/trackbacks/167758.html 1.copy() 綆楁硶鎶婁竴鍫唅terator褰撳仛鍓嶄袱涓疄鍙? 鐢ㄥ畠浠爣璁板嚭瑕佹嫹璐濈殑鍏冪礌鑼冨洿, 絎笁涓疄鍙傛槸涓涓猧terator, 瀹冩爣璁頒簡琚嫹璐濆厓绱犲皢瑕佹斁緗殑璧峰浣嶇疆, back_inserter琚О涓篿terator閫傞厤鍣? 瀹冧嬌寰楀厓绱犺鎻掑叆鍒頒綔涓哄疄鍙傜殑vector鐨勫熬閮?/span>
2.unique()闅忕劧鍘繪帀浜嗗鍣ㄤ腑鐨勯噸澶嶅? 浣嗘槸鍙幓鎺夌浉閭葷殑閲嶅鍊? 鍥犳鍙互鍏堝瀹瑰櫒榪涜sort()鎺掑簭
]]> C++Primer 璇諱功絎旇12 寮傚父澶勭悊 http://m.shnenglu.com/jianc/archive/2012/03/12/167709.htmljianc jianc Mon, 12 Mar 2012 03:55:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/12/167709.html http://m.shnenglu.com/jianc/comments/167709.html http://m.shnenglu.com/jianc/archive/2012/03/12/167709.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167709.html http://m.shnenglu.com/jianc/services/trackbacks/167709.html 1.c++鐨勫紓甯稿鐞嗘満鍒惰縐頒負涓嶅彲鎭㈠鐨?nonresumptive) 2.鏍堝睍寮(stack unwinding) 濡傛灉鎵懼埌涓涓猚atch瀛愬彞, 鍒欒寮傚父琚鐞? 濡傛灉娌℃湁鎵懼埌catch瀛愬彞, 鍒欏湪涓昏皟鍑芥暟緇х畫鏌ユ壘 榪欎釜榪囩▼娌跨潃娼滈冨嚱鏁拌皟鐢ㄩ摼鍚戜笂緇х畫, 鐩村埌鎵懼埌璇ュ紓甯哥殑catch瀛愬彞. 3.閲嶆柊鎶涘嚭(rethow) throw; //rethrow璇彞鍙兘鍑虹幇鍦╟atch瀛愬彞椋炲鍚堣鍙ヤ腑 琚姏鍑虹殑寮傚父灝辨槸鍘熸潵鐨勫紓甯稿璞?br />4.鎶奵atch瀛愬彞涓殑寮傚父瀵硅薄澹版槑涓哄紩鐢? 鍏嶅幓浜嗗璞$殑鍐呭瓨鎷瘋礉, 鍙堝彲浠ョ‘淇濆簲鐢ㄥ湪catch瀛愬彞涓殑寮傚父瀵硅薄涓婄殑淇敼鎿嶄綔, 鑳藉鍙嶆槧鍒拌閲嶆柊鎶涘嚭鐨勫紓甯?/p>
瀵硅薄涓?br />5.catch-all try { .... } catch(...) {} //catch-all鏍煎紡 6.catch瀛愬彞琚鏌ョ殑欏哄簭涓庡畠浠湪try鍧椾箣鍚庡嚭鐜扮殑欏哄簭鐩稿悓, 涓鏃︽壘鍒頒簡涓涓尮閰? 鍒欏悗緇殑catch瀛愬彞灝嗕笉鍐嶆鏌?br />7.寮傚父瑙勮寖(exception specification) void foo() throw(Object); //榪欑澹版槑灝辨槸寮傚父瑙勮寖 寮傚父澹版槑鏄嚱鏁版帴鍙g殑涓閮ㄥ垎 8.寮傚父瑙勮寖涓嶅厑璁擱噸琚姏鍑虹殑寮傚父綾誨瀷鍒板紓甯歌鑼冨埗瀹氱殑綾誨瀷涔嬮棿鐨勮漿鎹? void foo() throw(string) { .... throw "exception"; //涓嶅厑璁鎬粠const char* 鍒皊tring鐨勮漿鎹? 姝ゆ椂璋冪敤unexpected() throw string("exception"); //鍙互 }
]]> C++Primer 璇諱功絎旇11 鍑芥暟妯℃澘 http://m.shnenglu.com/jianc/archive/2012/03/12/167706.htmljianc jianc Mon, 12 Mar 2012 02:55:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/12/167706.html http://m.shnenglu.com/jianc/comments/167706.html http://m.shnenglu.com/jianc/archive/2012/03/12/167706.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167706.html http://m.shnenglu.com/jianc/services/trackbacks/167706.html 1.鍏抽敭瀛梩emplate鎬繪槸鏀懼湪妯℃澘鐨勫畾涔変笌澹版槑鐨勬渶鍓嶉潰, 鍚庨潰鏄敤閫楀彿鍒嗛殧鐨勬ā鏉垮弬鏁板垪琛?template parameter list), 鍙傛暟琛ㄤ笉鑳戒負絀?/span>
2.妯℃澘闈炵被鍨嬪弬鏁版槸鐢變竴涓櫘閫氱殑鍙傛暟澹版槑鏋勬垚, 浠h〃涓涓綔鍦ㄧ殑鍊?
template <typename Type, int size>
Type min(Type (&arr)[size]);
//褰撳嚱鏁版ā鏉縨in()琚疄渚嬪寲鏃? size鐨勫間細琚竴涓紪璇戞椂鍒誨凡鐭ョ殑甯擱噺鍊間唬鏇?/span>
3.綾誨瀷鍜屽肩殑鏇挎崲榪囩▼琚О涓烘ā鏉跨殑瀹炰緥鍖?template instantiation)
4.c++鏀寔涓ょ妯℃澘緙栬瘧妯″紡:
鍖呭惈妯″紡(Inclusion Model)
鍒嗙妯″紡(Separation Model)
鍖呭惈緙栬瘧妯″紡涓? 鍦ㄦ瘡涓ā鏉胯瀹炰緥鍖栫殑鏂囦歡涓寘鍚嚱鏁版ā鏉跨殑瀹氫箟, 騫朵笖寰寰鎶婂畾涔夋斁鍦ㄥご鏂囦歡涓? 鍚戝鍐呰仈鍑芥暟宸﹂偅鏍?/span>
--緙虹偣: 鍑芥暟妯℃澘浣?body)鎻忚堪浜嗗疄鐜扮粏鑺?/span>
鍒嗙緙栬瘧妯″紡涓? 鍑芥暟妯℃澘澹版槑鏀懼湪澶存枃浠朵腑, 鍑芥暟妯℃澘瀹氫箟鏀懼湪cpp鏂囦歡閲?/span>
//.h
template <typename Type> Type min(Type t1, Type t2);
//.cpp
export template <typename Type>
Type min(Type t1, Type t2) { /* ... */ }
//鍏抽敭瀛?export! 鍙鍑虹殑妯℃澘
//騫朵笉鏄墍鏈夌殑緙栬瘧鍣ㄩ兘鏀寔鍒嗙妯″紡
]]> 鍗蟲椂緇冧範 http://m.shnenglu.com/jianc/archive/2012/03/09/167484.htmljianc jianc Fri, 09 Mar 2012 05:53:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/09/167484.html http://m.shnenglu.com/jianc/comments/167484.html http://m.shnenglu.com/jianc/archive/2012/03/09/167484.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167484.html http://m.shnenglu.com/jianc/services/trackbacks/167484.html
stl 鎵懼嚭鏁扮粍鐨勬渶灝忓?
#include < iostream > #include < string > #include < algorithm > #include < vector > using namespace std; template < typename Type, int size > Type getMin(const Type ( & arr)[size]) { cout << " Size: " << size << endl; vector < Type > vec(arr, arr + size); sort(vec.begin(), vec.end()); return vec[ 0 ]; } int main( int argc, char * argv[]) { int arr[] = { 4 , - 3 , 2 , 4 , 5 , 3 , 4 , 3 } ; cout << getMin(arr) < < endl; return 0 ; }
stl鍒犻櫎閲嶅鏁版嵁
#include < iostream > #include < vector > #include < algorithm > #include < iterator > using namespace std; template < typename Type > void display( const vector < Type >& vec) { vector < Type > ::const_iterator iter = vec.begin(); while (iter != vec.end()) { cout << * iter << " " ; iter ++ ; } cout << endl; } int main( int argc, char * argv[]) { const int Len = 12 ; int arr[Len] = { 2 , 2 , 3 , 2 , 1 , 2 , 3 , 4 , 5 , 4 , 5 , 6 }; vector < int > vec(arr, arr + Len); sort(vec.begin(), vec.end()); display(vec); vector < int > ::iterator iterBegin = vec.begin(); vector < int > ::iterator iterEnd = unique(vec.begin(), vec.end()); // 鍘繪帀閲嶅鐨?/span> display(vec); while (iterBegin != iterEnd) { cout << * iterBegin << " " ; iterBegin ++ ; } cout << endl; return 0 ; }
map瀛楃媯绱?/h3>
#include < string > #include < map > #include < algorithm > #include < iostream > using namespace std; int main( int argc, char * argv[]) { map < char , int > mObj; string str; cin >> str; for ( int i = 0 ; i < str.size(); ++ i) { if (mObj.count(str[i])) mObj[str[i]] ++ ; else mObj.insert(map< char , int > ::value_type(str[i], 1 )); } map < char , int > ::iterator iter = mObj.begin(); while (iter != mObj.end()) { cout << iter -> first << " : " << iter -> second << endl; ++ iter; } return 0 ; }
]]> C++Primer 璇諱功絎旇10 鍑芥暟閲嶈澆(寰呮洿鏂? http://m.shnenglu.com/jianc/archive/2012/03/09/167474.htmljianc jianc Fri, 09 Mar 2012 03:59:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/09/167474.html http://m.shnenglu.com/jianc/comments/167474.html http://m.shnenglu.com/jianc/archive/2012/03/09/167474.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167474.html http://m.shnenglu.com/jianc/services/trackbacks/167474.html 2.閾炬帴鎻愮ず絎xtern "C"鍙兘鎸囧畾閲嶈澆鍑芥暟闆嗕腑鐨勪竴涓嚱鏁?br /> --鍥犱負閲嶈澆鍑芥暟鏃? 闇瑕乧++鐨勫悕瀛楁敼緙栧姛鑳? 鎵嶈兘鍖哄垎涓嶅悓鐨勫嚱鏁? 鑰宔xtern "C"鏄寚鏄庝簡涓嶈榪涜鍚嶅瓧鏀圭紪 //鍏朵粬緇嗚妭鍥炲ご鍐嶇湅 ]]> C++Primer 璇諱功絎旇9 鍩熷拰鐢熷懡鏈?/title> http://m.shnenglu.com/jianc/archive/2012/03/09/167473.htmljianc jianc Fri, 09 Mar 2012 03:40:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/09/167473.html http://m.shnenglu.com/jianc/comments/167473.html http://m.shnenglu.com/jianc/archive/2012/03/09/167473.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167473.html http://m.shnenglu.com/jianc/services/trackbacks/167473.html 1.涓婁笅鏂?context)
2. 鍏ㄥ眬鍩熷唴鐨勫嚱鏁板0鏄庡皢寮曞叆鍏ㄥ眬鍑芥暟(global function)
3.鍏ㄥ眬鍩熷唴鐨勫彉閲忓皢寮曞叆鍏ㄥ眬瀵硅薄(global object)
4.鐢熷懡鏈?lifetime)
5.鍑芥暟澹版槑(declaration) 鎸囧畾浜嗚鍑芥暟鐨勫悕瀛椾互鍙婂嚱鏁扮殑榪斿洖綾誨瀷鍜屽弬鏁板垪琛?br />
6.鍑芥暟瀹氫箟(definition)榪樹負鍑芥暟鎻愪緵浜嗗嚱鏁頒綋
7.extern涓哄0鏄庝絾涓嶅畾涔変竴涓璞℃彁渚涗簡涓縐嶆柟娉? --鎵胯浜嗚瀵硅薄浼氬湪鍏朵粬鍦版柟琚畾涔?br />
extern 澹版槑涓嶄細寮曡搗鍐呭瓨琚垎閰?br />
8.c++涓湁涓縐嶆満鍒? 閫氳繃瀹冨彲浠ユ妸鍑芥暟鍙傛暟鐨勭被鍨嬪拰鏁扮洰緙栫爜鍦ㄥ嚱鏁板悕涓? 鏀規満鍒跺彨鍋氱被鍨嬪畨鍏ㄩ摼鎺?type-safe-linkage)
9.涓嶅悓鏂囦歡涓嚭鐜板悓涓瀵硅薄鎴栧嚱鏁板0鏄庣殑鍏朵粬綾誨瀷涓嶅尮閰嶆儏鍐? 鍦ㄧ紪璇戞垨閾炬帴鏃跺彲鑳戒笉浼氳鎹曟崏鍒? 鍥犱負緙栬瘧鍣ㄤ竴嬈″彧鑳藉鐞嗕竴涓枃浠? 浠栦笉鑳藉緢瀹規槗鍦版
鏌ュ埌鏂囦歡涔嬮棿鐨勭被鍨嬭繚渚? 榪欎簺綾誨瀷榪濅緥鍙兘鏄▼搴忎弗閲嶉敊璇殑鏍規簮
10.澶存枃浠朵負鎵鍚慹xtern瀵硅薄澹版槑, 鍑芥暟澹版槑浠ュ強inline鍑芥暟瀹氫箟鎻愪緵浜嗕竴涓泦涓殑浣嶇疆: 榪欒縐頒綔澹版槑鐨勫眬閮ㄥ寲(localization)
11.澶存枃浠舵彁渚涗簡涓や釜瀹夊叏淇濊瘉
淇濊瘉鎵鏈夋枃浠墮兘鍖呭惈鍚屼竴涓叏灞瀵硅薄鎴栧嚱鏁扮殑鍚屼竴浠藉0鏄?br />
濡傛灉闇瑕佷慨鏀瑰0鏄? 鍒欏彧闇瑕佹敼鍙樹竴涓ご鏂囦歡
--鍙湪鏈琧pp鐢ㄧ殑鍏ㄥ眬鍑芥暟, 璇ヤ笉璇ュ畾涔夊湪澶存枃浠墮噷闈?
12.灞閮ㄥ璞?local object)
鑷姩瀵硅薄(automatic object) --紼嬪簭榪愯鏍?br />
瀵勫瓨鍣ㄥ璞?register object) --濡傛灉鎵閫夋嫨鐨勫彉閲忚棰戠箒浣跨敤, 鍒欏瘎瀛樺櫒鍙橀噺鍙互鎻愰珮鍑芥暟鐨勬墽琛岄熷害
灞閮ㄩ潤鎬佸璞?local static object)
13.褰撲竴涓嚜鍔ㄥ彉閲忕殑鍦板潃鍛楀瓨鍌ㄥ湪涓涓敓鍛芥湡闀夸笌瀹冪殑鎸囬拡鏃? 璇ユ寚閽堣縐頒負絀烘偓鎸囬拡(dangling pointer)
14.鍔ㄦ佸垎閰嶇殑瀵硅薄琚垎閰嶅湪紼嬪簭鐨勭┖闂插瓨鍌ㄥ尯(free store)鐨勫彲鐢ㄥ唴瀛樻睜涓?br />
15.new琛ㄨ揪寮忓け璐ユ椂, 閫氬父浼氭姏鍑篵ad_alloc寮傚父
16.搴旂敤delete琛ㄨ揪寮忓け璐? 浣垮唴瀛樻棤娉曡繑鍥炵┖闂插瓨鍌ㄥ尯, 縐頒綔鍐呭瓨娉勯湶(memory leak)
17.瀵圭敤涓鍐呭瓨搴旂敤浜嗕袱嬈elete琛ㄨ揪寮? 閫氬父鍙戠敓鍦ㄤ袱涓寚閽堟寚鍚戝悓涓涓姩鎬佸垎閰嶅璞$殑鏃跺? 榪欐槸涓涓緢闅捐窡韙殑闂
18.鍦ㄥ璞¤閲婃斁鍚庤鍐欒瀵硅薄, 榪欏父甯鎬細鍙戠敓, 鍥犱負delete琛ㄨ揪寮忓簲鐢ㄧ殑鎸囬拡娌℃湁琚緗負0
19.涓哄府鍔╃▼搴忓憳鏇村ソ鍦扮鐞嗗姩鎬佸垎閰嶇殑鍐呭瓨, c++搴撴彁渚涗簡auto_ptr綾葷被鍨嬬殑鏀寔 --鏅鴻兘鎸囬拡
20.auto_ptr綾繪ā鏉垮ご鏂囦歡<memory>
auto_ptr<int>pi(new int(1024));
//pi鏄眬閮ㄦ櫤鑳芥寚閽? 褰損i鐢熷懡鏈熺粨鏉熸椂鍊? 浼氳嚜鍔ㄩ噴鏀緋i鎸囧悜鐨勫爢絀洪棿
涓轟簡鍒ゆ柇auto_ptr瀵硅薄鏄惁鎸囧悜浜嗕竴涓璞? 鍙互鐢ㄦ搷浣済et()榪斿洖auto_ptr瀵硅薄鍐呴儴鐨勫簳灞傛寚閽?br />
if(p_auto_int.get() != 0 && *p_auto_int != 1024) { ... }
21.鍦ㄦ煇浜涙儏鍐典笅, 灝忕粏鑺備細縐仛鎴愬彲鎬曠殑鎬ц兘鐡墮, 榪欎簺緇嗚妭涓嶅簲璇ョ儲鎵伴偅浜涜瘯鍥句負鏁翠釜紼嬪簭鎻愪緵瑙e喅鏂規鐨勪漢, 浣嗘槸榪欎簺緇嗚妭鏄湁緇忛獙鐨勭▼搴忓憳搴旇鑰冭檻
鐨?br />
22.瀹氫綅new琛ㄨ揪寮?br />
new琛ㄨ揪寮忓彲浠ュ厑璁哥▼搴忓憳瑕佹眰灝嗗璞″垱寤哄湪宸茬粡琚垎閰嶅ソ鐨勫唴瀛樹腑, 榪欑褰㈠紡鐨刵ew琛ㄨ揪寮忚縐頒負瀹氫綅new琛ㄨ揪寮?placement new expression)
new (place_address) type -specifier
place_address蹇呴』鏄釜鎸囬拡
澶存枃浠?lt;new>
byte *mem = new byte[4096]; //榪欎釜鏄嚜瀹氫箟鍐呭瓨姹?
char *tmp = new(mem) char; //鍦ㄥ唴瀛樻睜鍒嗛厤涓涓猚har鏉ョ敤?
delete [] mem;
]]> C++Primer 璇諱功絎旇8 鍑芥暟 http://m.shnenglu.com/jianc/archive/2012/03/08/167436.htmljianc jianc Thu, 08 Mar 2012 12:22:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/08/167436.html http://m.shnenglu.com/jianc/comments/167436.html http://m.shnenglu.com/jianc/archive/2012/03/08/167436.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167436.html http://m.shnenglu.com/jianc/services/trackbacks/167436.html
2.鎸夊間紶閫?pass-by-value)
3.鏌愪簺鎯呭喌涓? 緙栬瘧鍣ㄨ嚜鍔ㄥ皢鎸夊艱繑鍥炶漿鎹㈠埌鎸夊紩鐢ㄨ繑鍥? 璇ヤ紭鍖栫О涓哄懡鍚嶈繑鍥炲間紭鍖?named return value optimization)
4.鐩存帴鎴栭棿鎺ヨ皟鐢ㄨ嚜宸辯殑鍑芥暟琚О涓洪掑綊鍑芥暟(recursive function)
5.inline鎸囩ず瀵圭紪璇戝櫒鏉ヨ鍙槸涓涓緩璁? 緙栬瘧鍣ㄥ彲浠ラ夋嫨蹇界暐璇ュ緩璁?br />
]]> C++Primer 璇諱功絎旇7 鎶借薄瀹瑰櫒綾誨瀷 http://m.shnenglu.com/jianc/archive/2012/03/08/167416.htmljianc jianc Thu, 08 Mar 2012 09:06:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/08/167416.html http://m.shnenglu.com/jianc/comments/167416.html http://m.shnenglu.com/jianc/archive/2012/03/08/167416.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167416.html http://m.shnenglu.com/jianc/services/trackbacks/167416.html 1.欏哄簭瀹瑰櫒(sequence container) --鎷ユ湁鐢卞崟涓綾誨瀷鍏冪礌緇勬垚鐨勪竴涓湁搴忛泦鍚?br />
list, vector, deque
2.鍏寵仈瀹瑰櫒(associative container) --鏀寔鏌ヨ涓涓厓绱犳槸鍚﹀瓨鍦? 騫朵笖鍙互鏈夋晥鍦拌幏鍙栧厓绱?br />
map, set, multimap, multiset
3.瀹瑰櫒鐨勫閲?--鍦ㄥ鍣ㄤ笅涓嬈¢渶瑕佸闀胯嚜宸變箣鍓嶈兘澶熻鍔犲叆鍒板鍣ㄤ腑鐨勫厓绱犵殑鎬繪暟(瀹歸噺鍙笌榪炵畫瀛樺偍鐨勫鍣ㄧ浉鍏?vector, deque, string. 鑰宭ist涓嶈姹?/p>
瀹歸噺)
4.capacity()鎿嶄綔 --姹備竴涓鍣ㄧ殑瀹歸噺
5.瀹瑰櫒鐨勯暱搴?--瀹瑰櫒褰撳墠鎷ユ湁鍏冪礌鐨勪釜鏁?br />
6.size()鎿嶄綔 --姹備竴涓鍣ㄧ殑闀垮害
7.鏁版嵁綾誨瀷瓚婂鏉? vector鐨勬晥鐜囧氨瓚婁綆
8.reserve()鎿嶄綔 --鍏佽紼嬪簭鍛樺皢瀹瑰櫒鐨勫閲忚緗垚涓涓幇瀹炴寚瀹氱殑鍊?br />
9.榪唬鍣?iterator) --鎻愪緵浜嗕竴縐嶄竴鑸寲鐨勬柟娉? 瀵歸『搴忔垨鍏寵仈瀹瑰櫒綾誨瀷涓殑姣忎釜鍏冪礌榪涜榪炵畫璁塊棶
10.姣忎釜瀹瑰櫒綾誨瀷閮芥彁渚涗簡涓涓猙egin()鍜屼竴涓猠nd()鎴愬憳鍑芥暟
11.begin()榪斿洖涓涓猧terator, 鎸囧悜瀹瑰櫒鐨勭涓涓厓绱?br />
12.end()榪斿洖涓涓猧terator, 鎸囧悜瀹瑰櫒鐨勬湯鍏冪礌鐨勪笅涓涓綅緗?br />
13.鍑轟簡iterator綾誨瀷, 姣忎釜瀹瑰櫒榪樺畾涔変簡涓涓猚onst iterator綾誨瀷, 瀵逛簬閬嶅巻const瀹瑰櫒鏄繀闇鐨?br />
14.iterator綆楁湳璁虹畻鍙傜敤浜巚ector鎴杁eque, 鑰屼笉閫傜敤涓巐ist, 鍥犱負ielist鐨勫厓绱犲湪鍐呭瓨涓笉鏄繛緇瓨鍌ㄧ殑
15.string.find_first_of()鏌ユ壘涓庤鎼滅儲瀛楃涓蹭腑浠繪剰涓涓瓧絎︾浉鍖歸厤鐨勭涓嬈″嚭鐜? 騫惰繑鍥炲畠鐨勭儲寮曚綅緗?br />
16.string.substr()鐢熸垚string瀵硅薄鐨勫瓧涓茬殑涓涓嫹璐?br />
17.string.rfind()鏌ユ壘鏈鍚庣殑鎸囧畾瀛椾覆鍑虹幇鐨勭儲寮?br />
18.string.find_first_not_of()鏌ユ壘絎竴涓笉涓庤鎼滅儲瀛楃涓茬殑浠繪剰瀛楃鐩稿尮閰嶇殑瀛楃
19.string.find_last_of()鏌ユ壘瀛楃涓蹭腑鐨?涓庢悳绱㈠瓧絎︿覆浠繪剰鍏冪礌鐩稿尮閰?鐨勬渶鍚庝竴涓瓧絎?br />
20.string.find_last_not_of()鏌ユ壘瀛楃涓蹭腑鐨?涓庢悳绱㈠瓧絎︿覆浠繪剰瀛楃鍏ㄤ笉鍖歸厤"鐨勬渶鍚庝竴涓瓧絎?br />
21.string.erase(pos, num)鎿嶄綔鍘繪帀瀛楃涓蹭腑鐨勬寚瀹氫覆, pos琛ㄧず浣嶇疆, num琛ㄧず鍘繪帀鐨勯暱搴?br />
22.<locale>ctype綾? 灝佽漿浜嗘爣鍑哻搴撳嚱鏁扮殑鍔熻兘鍙婁竴緇勯潪鎴愬憳鍑芥暟
23.string.compare(pos, num, str); 姣旇緝pos浣嶇疆鐨勫悗闈um涓瓧絎︽槸鍚︿負str
24.string.insert(pos, newstring); pos琛ㄧず瑕佹彃鍏ョ殑浣嶇疆, newstring琛ㄧず瑕佹彃鍏ョ殑瀛楃涓?br />
25.string.assign(); 瀛楃涓叉嫹璐?br />
26.string.append(); 瀛楃涓叉嫾鎺?br />
27.string.swap(); 浜ゆ崲涓や釜瀛楃涓?br />
28.string.at(); 瀵瑰瓧絎︾殑涓嬫爣绱㈠紩鎿嶄綔, 鏈夊绱㈠紩鍊艱寖鍥存嫻? 涓嬫爣瓚婄晫鏃舵姏鍑簅ut_of_range寮傚父
try {
char ch = st.at(index);
} catch(std::out_of_range) { ... }
29.string.replace(pos, num, newstring); 鐢╪ewstring浠f浛pos鍚庨潰num涓瓧絎﹀瓙涓?br />
30.map 涔熷彨鍏寵仈鏁扮粍(associative array) 閿?鍊煎 key/value
閿敤鏉ョ儲寮昺ap, 鍊肩敤浣滃瓨鍌ㄥ拰媯绱㈢殑鏁版嵁
map瀵硅薄瀹氫箟, 鑷沖皯瑕佹寚鏄庨敭鍜屽肩殑綾誨瀷, 濡?
map<string, int> word_count;
31.map鐨勬暟鎹綍鍏?br />
map<string, string> str_str;
str_str[string("one")] = string("1"); //榪欑鏁堢巼姣旇緝浣?br />
str_str.insert(
map<string, string>::value_type("two", "2")
); //榪欑鏁堢巼楂?br />
32.鏌ユ壘騫惰幏鍙杕ap涓殑鍏冪礌
鏈綆鍗曠殑鏂規硶:
value = mapObj[key];
浣嗚繖鏍鋒湁涓棶棰? 濡傛灉涓嶅瓨鍦╧ey榪欎釜閿? mapObj灝變細鎻掑叆key閿? 騫舵妸瀵瑰簲鐨剉alue鍊間負榛樿鍊? 榪欐牱寰楀埌鐨剉alue鏄棤鏁堢殑
鎵浠? 搴旇榪欐牱鍐?br />
if(mapObj.count(key))
value = mapObj[key];
鎴栬呰繖鏍?
map<keyType, valueType>::iterator iter = mapObj.find(key);
if(iter != mapObj.end())
value = mapObj[key];
33.浠巑ap涓垹闄ゅ厓绱?br />
erase鎿嶄綔
mapObj.erase(key);
榪樻湁涓ょ閲嶈澆鏂瑰紡, 璇﹁鏂囨。
mapObj.clear(); 娓呯┖map瀵硅薄鎵鏈夊?br />
34.set瀵硅薄鎻掑叆鍏冪礌
#include <set>
set<setType> setObj;
setObj.insert(key);
35.set瀵硅薄鏌ユ壘鍏冪礌
setObj.count(key); //1鏈? 0娌℃湁
setObj.find(key); iter涓簊etObj.end()琛ㄧず娌℃湁
36.multiset鍜宮ultimap鍏佽瑕佽瀛樺偍鐨勯敭鍑虹幇澶氭
瀵逛簬multiset鍜宮ultimap鐨勮凱浠g瓥鐣ユ槸鑱斿悎浣跨敤find榪斿洖鐨刬terator鍜宑ount榪斿洖鐨勫?
count = mulsetObj.count();
multiset<type>::iterator iter;
iter = mulsetObj.find(key);
for(int i = 0; i < count; ++i, ++iter)
do_something(*iter);
鍙︿竴縐嶆柟娉曟槸浣跨敤equal_range()榪斿洖鐨刬terator鍊?br />
濡傛灉榪欎釜鍊煎瓨鍦? 鍒欑涓涓猧terator鎸囧悜璇ュ肩殑絎竴涓疄渚? 涓旂浜屼釜iterator鎸囧悜榪欎釜鍊肩殑鏈鍚庝竴涓疄渚嬬殑涓嬩竴涓綅緗?
switch(mulmapObj.count) {
case 0: break; //涓嶅瓨鍦?br />
case 1: //鍙湁涓欏? 鐢ㄦ櫘閫氱殑find鎿嶄綔
multimap<keyType, valueType>::iterator iter;
iter = mulmapObj.find(key);
do_something(*iter);
break;
default: //鏈夎澶氶」
typedef multimap<keyType, valueType>::iterator it;
pair<it, it>pos;
pos = mulmapObj.equal_range(key);
for(; pos.first != pos.second; pos.first++)
do_somethine(*pos.first);
}
//瀵瑰簲鐨? 鍒犻櫎鐨勮瘽鐢╩ulmapObj.erase(pos.first, pos.second);
//涓嶆敮鎸佷笅鏍囨搷浣滄槸璁塊棶multimap鍏冪礌鐨勪竴涓檺鍒?
mulmapObj[key]; //閿欒
37.鏍堝鍣?stack container)鏀寔鐨勬搷浣?//澶存枃浠?lt;stack>
empty()
size()
pop()
top()
push(item)
38.鏍堢被鍨嬭縐頒負瀹瑰櫒閫傞厤鍣?container adapter)
39.緙虹渷鎯呭喌涓? 鏍堢敤瀹瑰櫒綾誨瀷deque瀹炵幇, 鏀瑰彉榪欎釜緙虹渷鍊煎彲浠ヨ繖鏍?
stack<type, list<type>> stackObj; //鏀規垚鐢ㄥ鍣ㄧ被鍨媗ist瀹炵幇
//涓鑸槸瀹氫箟涓涓寚閽堟爤
class CTest;
stack<CTest*> ctestStack;
40.鏍囧噯搴撴彁渚涗簡涓ょ椋庢牸鐨勯槦鍒? queue(闃熷垪), priority_queue(浼樺厛綰ч槦鍒?
澶存枃浠?<queue>
41.queue鍜宲riority_queue鎿嶄綔
empty()
size()
pos()
front() //鍙兘鐢ㄥ湪涓鑸槦鍒?br />
back() //鍙兘鐢ㄥ湪涓鑸槦鍒?br />
top() //鍙兘鐢ㄥ湪浼樺厛綰ч槦鍒?br />
push(item)
]]> C++Primer 璇諱功絎旇6 璇彞 http://m.shnenglu.com/jianc/archive/2012/03/07/167328.htmljianc jianc Wed, 07 Mar 2012 09:00:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/07/167328.html http://m.shnenglu.com/jianc/comments/167328.html http://m.shnenglu.com/jianc/archive/2012/03/07/167328.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167328.html http://m.shnenglu.com/jianc/services/trackbacks/167328.html
2.鏁呮剰鐪佺暐break鐨刢ase鏍囩搴旇鎻愪緵涓鏉℃敞閲? 浠ユ寚鏄庤繖縐嶇渷鐣ユ槸鏁呮剰鐨?br />
3.isalpha() 鏍囧噯c搴?鍒ゆ柇涓涓瓧絎︽槸鍚︿負涓涓嫳鏂囧瓧姣?--澶存枃浠?ctype.h
]]> C++Primer 璇諱功絎旇5 琛ㄨ揪寮?/title> http://m.shnenglu.com/jianc/archive/2012/03/07/167321.htmljianc jianc Wed, 07 Mar 2012 07:45:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/07/167321.html http://m.shnenglu.com/jianc/comments/167321.html http://m.shnenglu.com/jianc/archive/2012/03/07/167321.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167321.html http://m.shnenglu.com/jianc/services/trackbacks/167321.html 1.鏄劇ず綾誨瀷杞崲(explicit conversion) 2.寮哄埗綾誨瀷杞崲(cast) 3.c++ limits鎻愪緵浜嗕笌鍐呯疆綾誨瀷琛ㄧず鏈夊叧鐨勪俊鎭?br />4.緋葷粺涓烘瘡涓▼搴忛兘鎻愪緵浜嗕竴涓湪紼嬪簭鎵ц鏃跺彲鐢ㄧ殑鍐呭瓨姹?絀洪棽瀛樺偍鍖篺ree store 鎴栧爢 heap) 5.鍔ㄦ佸唴瀛樺垎閰?dynamic memory allocation) 6.bitset鎿嶄綔 test(pos) pos浣嶆槸鍚︿負1? any() 浠繪剰浣嶆槸鍚︿負1? none() 鏄惁娌℃湁浣嶄負1? count() 鍊兼槸1鐨勪釜鏁?br /> size() 浣嶅厓绱犵殑涓暟 [pos] 璁塊棶pos浣?br /> flip() 緲昏漿鎵鏈変綅 flip(pos) 緲昏漿pos浣?br /> set() 灝嗘墍鏈変綅緗? set(pos) 灝唒os浣嶇疆1 reset() 灝嗘墍鏈変綅緗? reset() 灝唒os浣嶇疆0
bitset鎿嶄綔澶存枃浠?<bitset> 7.bitset鏈?縐嶅0鏄庢柟寮? bitset<32>bitvec; bitset<32>bitvec(0xffff); bitset<32>bitvec("101010"); 8.bitset杞垚string瀵硅薄: bit.to_string(); 9.bitset杞垚unsigned long鍨嬫暣鏁?br /> bit.to_ulong(); 10.鏄劇ず綾誨瀷杞崲 static_cast dynamic_cast const_cast reinterpret_cast 铏界劧鏈夋椂鍊欑‘瀹為渶瑕佸己鍒剁被鍨嬭漿鎹? 浣嗘槸瀹冧滑涔熸槸紼嬪簭閿欒鐨勬簮娉? 11.浠諱綍闈瀋onst鏁版嵁綾誨瀷鐨勬寚閽堥兘鍙互琚祴鍊肩粰void*鍨嬬殑鎸囬拡 void*鍨嬬殑鎸囬拡琚О涓烘硾鍨?generic)鎸囬拡 void*鍨嬫寚閽堜笉鑳界洿鎺ヨ瑙i櫎寮曠敤 12.const_cast 杞崲鍙艱〃杈懼紡鐨勫父閲忔?浠ュ強volatile瀵硅薄鐨剉olatile鎬? 13.緙栬瘧鍣ㄩ殣寮忔墽琛岀殑浠諱綍綾誨瀷杞崲閮藉彲浠ョ敱static_cast鏄劇ず瀹屾垚 14.dynamic_cast鏀寔鍦ㄨ繍琛屾椂鍒昏瘑鍒湁鎸囬拡鎴栧紩鐢ㄧ殑綾誨璞?/p>
]]> C++Primer 璇諱功絎旇4 C++鏁版嵁綾誨瀷 http://m.shnenglu.com/jianc/archive/2012/03/07/167310.htmljianc jianc Wed, 07 Mar 2012 05:09:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/07/167310.html http://m.shnenglu.com/jianc/comments/167310.html http://m.shnenglu.com/jianc/archive/2012/03/07/167310.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167310.html http://m.shnenglu.com/jianc/services/trackbacks/167310.html
2.鏂囧瓧甯擱噺鏄笉鍙鍧鐨?nonaddressable)
3.c++鍏抽敭瀛? asm, auto, bool, breek, case, catch, char, class, const, const_cast, continue, default, delete, do, double, dynamic_cast
else, enum, explicit, export, extern, false, float, for, friend, goto, if, inline, int, long, mutable, namespace, new, operator
private, protected, public, register, renterpret_cast, return, short, signed, sizeof, static, static_cast, struct, switch,
template, union, unsigned, using, virtual, void, volatile, wchar_t, while
4.鍏ㄥ眬鍩?global scope)
5.replace鐢ㄦ硶: replace(string.begin(), string.end(), 'a', 'b'); //鎶妔tring閲岀殑a鏇挎崲鎴恇
6.欖旀暟(magic number) --閲嶈鎬у湪涓婁笅鏂囦腑娌℃湁浣撶幇鍑烘潵
7.c++涓嶆敮鎸佸湪鏋氫婦鎴愬憳涔嬮棿鐨勫墠鍚庣Щ鍔?br />
8.vector綾諱負鍐呯疆鐨勬暟緇勬彁渚涗簡涓縐嶄唬鏇胯〃紺?br />
9.vector鏈変袱縐嶄笉鍚屽艦寮? 鏁扮粍涔犳儻; stl涔犳儻
10.size()鏌ヨvector澶у皬
11.empty()嫻嬭瘯vector鏄惁涓虹┖
12.push_back()鍦╲ector鍚庨潰鎻掑叆涓涓厓绱?br />
13.volatile --緙栬瘧鍣ㄦ墽琛岀殑鏌愪簺渚嬭浼樺寲琛屼負涓嶈兘搴旂敤鍦ㄥ凡鎸囧畾涓簐olatile鐨勫璞′笂
14.pair綾誨瀷 --鎶婄浉鍚岀被鍨嬫垨涓嶅悓綾誨瀷鐨勪袱涓煎叧鑱旇搗鏉?br />
澶存枃浠?lt;utility>
pair<string, string> author("abc", "def");
pair鐨勬垚鍛樿闂 first second
]]> C++Primer 璇諱功絎旇3 C++嫻忚 http://m.shnenglu.com/jianc/archive/2012/03/06/167252.htmljianc jianc Tue, 06 Mar 2012 08:52:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/06/167252.html http://m.shnenglu.com/jianc/comments/167252.html http://m.shnenglu.com/jianc/archive/2012/03/06/167252.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167252.html http://m.shnenglu.com/jianc/services/trackbacks/167252.html
2.闈欐佸唴瀛樺垎閰嶆槸鍦ㄧ▼搴忔墽琛屼箣鍓嶈繘琛岀殑, 鏁堢巼姣旇緝楂? 浣嗙己灝戠伒媧繪?br />
3.鍔ㄦ佸唴瀛樺垎閰嶆槸鍦ㄧ▼搴忔墽琛屼箣鍚庤繘琛岀殑, 鏁堢巼姣旇緝浣? 浣嗙伒媧繪ч珮
4.鍐呭瓨娉勯湶(memory leak) --鏈夌浉搴旇瘑鍒唴瀛樻硠闇茬殑宸ュ叿
5.鎴愬憳璁塊棶鎿嶄綔絎?member access operator)
6.鍏湁鎴愬憳鎻愪緵浜嗙被鐨勫叕鏈夋帴鍙?public interface) --瀹炵幇浜嗚繖涓被鐨勮涓虹殑闆嗗悎
7.縐佹湁鎴愬憳鎻愪緵縐佹湁瀹炵幇浠g爜(private implementation) --瀛樺偍淇℃伅鐨勬暟鎹?br />
8.綾葷殑鍏叡鎺ュ彛涓庣鏈夊疄鐜頒唬鐮佺殑鍒嗙 --縐頒負淇℃伅闅愯棌
9.淇℃伅闅愯棌鐨勫ソ澶? 綆鍖栫被鍔熻兘鐨勪慨鏀逛簬鎵╁睍, 鏂逛究閿欒鐨勬鏌?br />
10.鍐呰仈鍑芥暟(inline function) 鍦ㄨ皟鐢ㄧ偣涓婂睍寮
11.鍑芥暟閲嶈澆(function overloading)
12.綾誨煙鎿嶄綔絎?class scope operator) --綾誨悕::
13.鍩熸搷浣滅(scope operator) --::
14.灞鍩?local scope)
15.鎷瘋礉鏋勯犲嚱鏁?copy constructor)
16. 綾誨悕 object;
綾誨悕 obj1 = object; --璋冪敤鎷瘋礉鏋勯犲嚱鏁?br />
綾誨悕 obj2(object); --璋冪敤鎷瘋礉鏋勯犲嚱鏁?br />
17.寮曠敤(reference)
18.鏋愭瀯鎴愬憳鍑芥暟(destructor member function)
19.鎿嶄綔絎﹂噸杞?operator overloading)
20.鍩虹被(base class)
21.媧劇敓綾?derived class)
22.瀛愮被(subtype)
23.濡傛灉甯屾湜闃叉媧劇敓綾葷洿鎺ヨ闂煇涓垚鍛? 鍙互鎶婅鎴愬憳澹版槑涓簆rivate鎴愬憳
24.濡傛灉紜俊鏌愪釜鎴愬憳鎻愪緵浜嗘淳鐢熺被闇瑕佺洿鎺ヨ闂殑鎿嶄綔鎴栨暟鎹瓨鍌? 鑰屼笖閫氳繃榪欎釜鎴愬憳, 媧劇敓綾葷殑瀹炵幇浼氭洿鏈夋晥, 鍒欏0鏄庝負protected鎴愬憳
25.鍩虹被鐨勬瀯閫犲嚱鏁版病鏈夎媧劇敓綾葷戶鎵?鏋愭瀯鍑芥暟鍜屾嫹璐濊祴鍊兼搷浣滅涔熷悓鏍鋒病鏈夎緇ф壙)
26.澶氱戶鎵?multiple inheritance)
27.铏氭嫙緇ф壙(virtual inheritance)
28.RTTI(榪愯鏃跺埢綾誨瀷璇嗗埆) --鍦ㄧ▼搴忔墽琛岃繃紼嬩腑浠繪剰涓涓偣涓? 鑳藉鏌ヨ鏌愮被鐨勫紩鐢ㄦ垨鎸囬拡鎸囧悜鐨勫疄闄呯被鍨?br />
29.綾誨瀷/瀛愮被鍨嬬戶鎵垮叧緋繪斁鏄犱簡涓縐?is-a(鏄竴縐?"鐨勫叧緋?br />
30.娉涘瀷璁捐(Generic)
31.寮傚父(exception)
32.寮傚父澶勭悊(exception handling) --寮傚父澶勭悊璁炬柦澶уぇ鍦板噺灝戜簡紼嬪簭浠g爜鐨勯暱搴﹀拰澶嶆潅搴?br />
33.紼嬪簭璋冪敤鏍?Program call stack)
34.鍚嶅瓧絀洪棿namespace
35.寤鴻浣跨敤甯︽湁綺劇粏閫夋嫨鍔熻兘鐨剈sing澹版槑浠f浛using鎸囩ず絎?br />
36.vector --鍚戦噺
37.澶存枃浠?<vector>
38.榪唬鍣ㄦ槸涓涓敮鎸佹寚閽堢被鍨嬫娊璞$殑綾誨璞?br />
39.鎼滅儲(search)綆楁硶: find(), find_if(), search(), binary_earch(), count(), count_if()
鍒嗙被鎺掑簭(sorting)涓庨氱敤鎺掑簭(ordering)綆楁硶: sort(), partial_sort(), merge(), partition(), rotate(), reverse(), random_shuffle()
鍒犻櫎(deletion)綆楁硶: unique()鍜宺emove()
綆楁湳(numeric)綆楁硶: accumulate(), partial_sum(), inner_product() 鍜宎djacent_difference()
鐢熸垚(generation)鍜屽彉寮?mutation)綆楁硶: generate(), fill(), transformation(), copy(), for_each()
鍏崇郴(Relational)綆楁硶: equal(), min(), max()
40.綆楁硶澶存枃浠?<algorithm>
]]> C++Primer 璇諱功絎旇2 寮濮?/title> http://m.shnenglu.com/jianc/archive/2012/03/06/167237.htmljianc jianc Tue, 06 Mar 2012 05:09:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/06/167237.html http://m.shnenglu.com/jianc/comments/167237.html http://m.shnenglu.com/jianc/archive/2012/03/06/167237.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167237.html http://m.shnenglu.com/jianc/services/trackbacks/167237.html 2.鍑芥暟鍘熷瀷(function prototype) 3.璋冪敤(invoke) 4.娓愯繘寮忕敓鎴愮▼搴忕殑鏂規硶(鍏堝啓鍝戝嚱鏁? 鍚庨潰鍐嶇敤鐪熸鐨勫疄鐜版潵浠f浛榪欎簺鍝戝嚱鏁? 5.璇曞浘涓涓嬪瓙灝卞啓鍑哄畬鏁寸殑鍔熻兘紼嬪簭, 鍑犱箮涓嶈偗鑳?br />6.Conversion綾誨瀷杞崲 7.榪唬(iterate), 寰幆(loop) 8.棰勫鐞嗘寚紺虹(preprocessor include directive) 9.緙栬瘧c++紼嬪簭, 緙栬瘧鍣ㄤ細鑷姩棰勫鐞哶_cplusplus 10.緙栬瘧c紼嬪簭, 緙栬瘧鍣ㄨ嚜鍔ㄩ澶勭悊__STDC__ 11.__STDC__鍜宊_cplusplus涓嶄細鍚屾椂琚畾涔?br />12.__LINE__璁板綍鏂囦歡宸茬粡琚紪璇戠殑琛屾暟 13.__FILE__璁板綍姝e湪琚紪璇戠殑鏂囦歡鍚嶅瓧 14.__TIME__璁板綍褰撳墠緙栬瘧鏃墮棿 15.__DATE__璁板綍褰撳墠緙栬瘧鏃ユ湡 ]]> C++Primer 璇諱功絎旇1 c++姒傝堪 http://m.shnenglu.com/jianc/archive/2012/03/06/167233.htmljianc jianc Tue, 06 Mar 2012 03:44:00 GMT http://m.shnenglu.com/jianc/archive/2012/03/06/167233.html http://m.shnenglu.com/jianc/comments/167233.html http://m.shnenglu.com/jianc/archive/2012/03/06/167233.html#Feedback 0 http://m.shnenglu.com/jianc/comments/commentRss/167233.html http://m.shnenglu.com/jianc/services/trackbacks/167233.html
2.鍩轟簬瀵硅薄(object based)鐨勭▼搴忚璁?br />
3.閫氳繃涓緇勬暟鎹娊璞℃潵寤虹珛闂鐨勬ā鍨? 鍦╟++涓綋鐜頒負綾?br />
4.涓庢瘡涓被鐩稿叧鐨勭畻娉曠О涓虹被鐨勫叕鏈夋帴鍙?public interface)
5.闈㈠悜瀵硅薄鐨勭▼搴忚璁℃柟娉曢氳繃緇ф壙(inheritance)鏈哄埗鍜屽姩鎬佺粦瀹?dynamic binding)鏈哄埗鎵╁睍浜嗘娊璞℃暟鎹被鍨?br />
6.緇ф壙鏈哄埗瀵圭幇鏈夊疄鐜頒唬鐮侀噸鐢?br />
7.鍔ㄦ佺粦瀹氬鐜版湁鎺ュ彛鐨勯噸鐢?涓撳寤鴻:涓嶈瀵瑰疄鐜扮紪紼? 瑕佸鎺ュ彛緙栫▼)
8.c++鏀寔澶氱紼嬪簭璁捐鏂規硶(緙虹偣, 浣垮緱璇█榪囦簬搴炲ぇ, 澶嶆潅)
]]> 青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
欧美一激情一区二区三区 |
欧美一区激情 |
亚洲综合日韩在线 |
免费在线看成人av |
亚洲国产精品成人精品 |
另类人畜视频在线 |
久久成人av少妇免费 |
国产日韩精品一区二区 |
亚洲欧美激情诱惑 |
一区二区三区不卡视频在线观看
|
国产精品99久久久久久有的能看
|
亚洲免费视频成人 |
亚洲精品久久久久久下一站 |
久久综合久久综合久久 |
一区二区三区在线视频观看 |
久久久久综合 |
久久综合狠狠 |
亚洲精品在线三区 |
99国产精品久久久 |
国产伦精品一区二区三区免费
|
久久天天躁夜夜躁狠狠躁2022 |
国产麻豆精品theporn |
欧美一级视频精品观看 |
欧美一级在线播放 |
玉米视频成人免费看 |
欧美va亚洲va国产综合 |
噜噜噜躁狠狠躁狠狠精品视频
|
激情成人av在线 |
免费成人高清视频 |
欧美激情精品久久久久久大尺度
|
亚洲国产成人精品女人久久久 |
欧美成人国产va精品日本一级 |
欧美www视频 |
夜夜爽www精品 |
午夜在线电影亚洲一区 |
亚洲高清三级视频 |
日韩午夜在线电影 |
国产情人综合久久777777 |
久久精品国产亚洲高清剧情介绍 |
久久夜色精品国产 |
亚洲欧美国内爽妇网 |
久久久免费精品 |
亚洲一二三区视频在线观看 |
欧美在线免费观看 |
亚洲麻豆一区 |
欧美一区二区视频观看视频 |
亚洲日本中文字幕 |
欧美一区午夜精品 |
日韩午夜三级在线 |
久久福利电影 |
正在播放日韩 |
久久久噜噜噜久久久 |
亚洲综合99 |
欧美a级大片 |
久久av一区二区三区漫画 |
模特精品在线 |
久久久欧美精品 |
欧美午夜精品久久久 |
裸体女人亚洲精品一区 |
国产精品国产馆在线真实露脸 |
老司机精品福利视频 |
国产精品免费小视频 |
亚洲国产精品黑人久久久 |
国产一区二区三区四区三区四 |
9色精品在线 |
久久综合给合 |
欧美一级二级三级蜜桃 |
欧美刺激性大交免费视频 |
久久久免费av |
国产日韩欧美日韩 |
亚洲视频久久 |
亚洲视频在线观看 |
免费中文日韩 |
男人插女人欧美 |
国产亚洲在线观看 |
亚洲小说区图片区 |
亚洲天堂久久 |
欧美日韩国产综合一区二区 |
欧美成人性生活 |
一色屋精品视频免费看 |
性欧美暴力猛交69hd |
欧美一区二区三区成人 |
国产精品麻豆va在线播放 |
一区二区日韩欧美 |
亚洲一区二区三区激情 |
欧美日韩免费一区二区三区视频 |
欧美国产国产综合 |
亚洲黄页一区 |
欧美激情精品久久久 |
亚洲精品久久久蜜桃 |
日韩视频一区二区在线观看 |
欧美成人一区在线 |
亚洲精品乱码久久久久久久久 |
亚洲精品欧美激情 |
欧美精品久久久久久久久老牛影院 |
欧美sm视频 |
亚洲人体一区 |
欧美视频网站 |
亚洲一区欧美激情 |
欧美一区二区三区在线视频 |
国产精品一区二区a |
欧美一区二区精品 |
久久综合激情 |
亚洲人成网站999久久久综合 |
欧美mv日韩mv国产网站app |
欧美国产成人在线 |
99pao成人国产永久免费视频 |
欧美另类一区 |
亚洲无毛电影 |
久久久久久亚洲精品中文字幕 |
红桃视频国产精品 |
欧美顶级少妇做爰 |
99这里只有精品 |
久久精品理论片 |
亚洲黄色大片 |
国产精品欧美日韩一区 |
久久国产欧美精品 |
亚洲免费大片 |
久久久久久久综合色一本 |
在线免费一区三区 |
欧美日韩精品免费观看视频完整 |
亚洲天堂成人在线观看 |
久久久夜夜夜 |
一本色道久久88精品综合 |
国产乱肥老妇国产一区二 |
久久综合狠狠综合久久综合88 |
亚洲精品久久久久久久久 |
久久九九国产精品 |
一级日韩一区在线观看 |
国产一区二区三区观看 |
欧美日韩国产页 |
久久精品盗摄 |
在线一区亚洲 |
亚洲黄色一区 |
久久久久成人精品免费播放动漫 |
亚洲黄色成人 |
每日更新成人在线视频 |
亚洲精选视频免费看 |
久久xxxx |
一区二区三区视频免费在线观看 |
国产亚洲综合在线 |
欧美色一级片 |
欧美1区视频 |
欧美一区视频在线 |
99国产精品自拍 |
欧美韩国日本综合 |
欧美在线播放高清精品 |
日韩亚洲在线 |
亚洲电影欧美电影有声小说 |
国产精品亚洲视频 |
欧美日韩日本国产亚洲在线 |
久久综合激情 |
久久av在线看 |
亚洲欧美成人在线 |
99视频一区 |
亚洲国产婷婷 |
欧美18av |
噜噜爱69成人精品 |
久久久久久久波多野高潮日日 |
这里是久久伊人 |
99xxxx成人网 |
91久久黄色 |
1769国产精品 |
黄色在线一区 |
在线成人h网 |
含羞草久久爱69一区 |
国产一区二区激情 |
国产老女人精品毛片久久 |
欧美性猛交xxxx乱大交退制版 |
欧美激情一区二区在线
|
国产精品老牛 |
欧美视频在线一区二区三区 |
欧美激情综合五月色丁香小说
|
亚洲国产精品高清久久久 |
国内成人精品2018免费看 |
国产视频久久久久 |
国产乱理伦片在线观看夜一区 |
国产精品男gay被猛男狂揉视频 |
欧美天堂在线观看 |
国产精品久久久爽爽爽麻豆色哟哟 |
欧美激情综合五月色丁香 |
欧美啪啪一区 |
欧美婷婷久久 |
国产欧美午夜 |
黄色另类av |
亚洲人www |
亚洲午夜电影网 |
欧美一区二区三区电影在线观看 |
欧美在线视频一区 |
久久亚洲精品中文字幕冲田杏梨 |
久久久亚洲午夜电影 |
欧美国产激情 |
亚洲精品黄网在线观看 |
亚洲午夜小视频 |
久久9热精品视频 |
免费国产自线拍一欧美视频 |
欧美日韩免费在线 |
国产欧美丝祙 |
亚洲精品欧美日韩 |
亚洲免费婷婷 |