C++基礎(chǔ)
這里會(huì)有一些關(guān)于C++語法和用法的介紹。也許很多文章來自裝載,但是我們是單純的目的來轉(zhuǎn)載和學(xué)習(xí)這些知識(shí)!
摘要: 首先static的最主要功能是隱藏,其次因?yàn)閟tatic變量存放在靜態(tài)存儲(chǔ)區(qū),所以它具備持久性和默認(rèn)值0.
閱讀全文
摘要: 本科期間居然沒有開數(shù)據(jù)結(jié)構(gòu)的課程!最近自學(xué)了這些,整理筆記可以分享下!
閱讀全文
摘要: 指針與引用看上去完全不同(指針用操作符’*’和’->’,引用使用操作符’.’),但是它們似乎有相同的功能。指針與引用都是讓你間接引用其他對(duì)象。你如何決定在什么時(shí)候使用指針,在什么時(shí)候使用引用呢?
閱讀全文
摘要: 在C++中,內(nèi)存分成5個(gè)區(qū),他們分別是堆、棧、自由存儲(chǔ)區(qū)、全局/靜態(tài)存儲(chǔ)區(qū)和常量存儲(chǔ)區(qū)。
閱讀全文
摘要: 跟exe有個(gè)main或者WinMain入口函數(shù)一樣,DLL也有一個(gè)入口函數(shù),就是DllMain。以“DllMain”為關(guān)鍵字,來看看MSDN幫助文檔怎么介紹這個(gè)函數(shù)的。
The DllMain function is an optional method of entry into a dynamic-link library (DLL)。(簡(jiǎn)要翻譯:對(duì)于一個(gè)Dll模塊,DllMain函數(shù)是可選的。)這句話很重要,很多初學(xué)者可能都認(rèn)為一個(gè)動(dòng)態(tài)鏈接庫肯定要有DllMain函數(shù)。其實(shí)不然,像很多僅僅包含資源信息的DLL是沒有DllMain函數(shù)的
閱讀全文
摘要: 先來闡述一下DLL(Dynamic Linkable Library)的概念,你可以簡(jiǎn)單的把DLL看成一種倉庫,它提供給你一些可以直接拿來用的變量、函數(shù)或類。在倉庫的發(fā)展史上經(jīng)歷了“無庫-靜態(tài)鏈接庫-動(dòng)態(tài)鏈接庫”的時(shí)代。
靜態(tài)鏈接庫與動(dòng)態(tài)鏈接庫都是共享代碼的方式,如果采用靜態(tài)鏈接庫,則無論你愿不愿意,lib中的指令都被直接包含在最終生成的EXE文件中了。但是若使用DLL,該DLL不必被包含在最終EXE文件中,EXE文件執(zhí)行時(shí)可以“動(dòng)態(tài)”地引用和卸載這個(gè)與EXE獨(dú)立的DLL文件。靜態(tài)鏈接庫和動(dòng)態(tài)鏈接庫的另外一個(gè)區(qū)別在于靜態(tài)鏈接庫中不能再包含其他的動(dòng)態(tài)鏈接庫或者靜態(tài)庫,而在動(dòng)態(tài)鏈接庫中還可以再包含其他的動(dòng)態(tài)或靜態(tài)鏈接庫。
閱讀全文
摘要: 在我們實(shí)際用軟件時(shí),經(jīng)??煽吹皆S多動(dòng)態(tài)連接庫。動(dòng)態(tài)連接庫有其自身的優(yōu)點(diǎn)如節(jié)省內(nèi)存、支持多語種等功能,而且,當(dāng)DLL中的函數(shù)改變后,只要不是參數(shù)的改變調(diào)用起的函數(shù)并不需要重新編譯。這在編程時(shí)十分有用。至于其他妙處,各位在電腦雜志、書籍中都能看到,我這里再說就是廢話了.這次小弟我所要講的是如何在VC5.0中如何做自己的Win32 DLLs,各位要做自己的動(dòng)態(tài)連接庫,首先要知道DLL在VC5.0中都有哪幾種分類。VC支持三種DLL,它們是:
1.Non-MFC Dlls
2.Regular Dlls
3.Extension Dlls Note:翻譯措辭不當(dāng),故遇到術(shù)語是引用原詞
Non-MFC DLL:指的是不用MFC的類庫結(jié)構(gòu),直接用C語言寫的DLL,其輸出的函數(shù)一般用的是標(biāo)準(zhǔn)C接口,并能被非MFC或MFC編寫的應(yīng)用程序所調(diào)用。LL,Regular DLL:和下述的Extension Dlls一樣,是用MFC類庫編寫的。明顯的特點(diǎn)是在源文件里有一個(gè)繼承CWinApp的類。其又可細(xì)分成靜態(tài)連接到MFC和動(dòng)態(tài)連接到MFC上的。但靜態(tài)連接到MFC的動(dòng)態(tài)連
閱讀全文
摘要: 靜態(tài)鏈接:每個(gè)應(yīng)用程序使用函數(shù)庫,必須擁有一份庫的備份。多個(gè)應(yīng)用程序運(yùn)行時(shí),內(nèi)存中就有多份函數(shù)庫代碼的備份。
動(dòng)態(tài)連接庫:多個(gè)應(yīng)用程序可以共享一份函數(shù)庫的備份。
閱讀全文
摘要: 標(biāo)準(zhǔn)庫
(被包含于中)提供兩個(gè)幫助生成偽隨機(jī)數(shù)的函數(shù): 閱讀全文
摘要: 1) 在View中獲得Doc指針2) 在App中獲得MainFrame指針3) 在View中獲得MainFrame指針4) 獲得View(已建立)指針5) 獲得當(dāng)前文檔指針6) 獲得狀態(tài)欄與工具欄指針7) 獲得狀態(tài)欄與工具欄變量8) 在Mainframe獲得菜單指針9) 在任何類中獲得應(yīng)用程序類10) 從文檔類取得視圖類的指針(1)11) 在App中獲得文檔模板指針12) 從文檔模板獲得文檔類指針13) 在文檔類中獲得文檔模板指針14) 從文檔類取得視圖類的指針(2)15) 從一個(gè)視圖類取得另一視圖類的指針
閱讀全文
摘要: mfc框架結(jié)合sdk的學(xué)習(xí)筆記(一)
閱讀全文
摘要: 對(duì)于很多初學(xué)者來說,往往覺得回調(diào)函數(shù)很神秘,很想知道回調(diào)函數(shù)的工作原理。本文將要解釋什么是回調(diào)函數(shù)、它們有什么好處、為什么要使用它們等等問題,在開始之前,假設(shè)你已經(jīng)熟知了函數(shù)指針
閱讀全文
摘要: 處理在程序的運(yùn)行時(shí)刻發(fā)生的錯(cuò)誤,對(duì)于任何一個(gè)程序設(shè)計(jì)者來講都是不陌生的。對(duì)于錯(cuò)誤的處理,我們有很多方法,本篇著重介紹的是C++中的錯(cuò)誤異常處理。
閱讀全文
摘要: 首先看一下sizeof在msdn上的定義:
The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a value of type size_t.
看到return這個(gè)字眼,是不是想到了函數(shù)?錯(cuò)了,sizeof不是一個(gè)函數(shù),你見過給一個(gè)函數(shù)傳參數(shù),而不加括號(hào)的嗎?sizeof可以,所以sizeof不是函數(shù)。網(wǎng)上有人說sizeof是一元操作符,但是我并不這么認(rèn)為,因?yàn)閟izeof更像一個(gè)特殊的宏,它是在編譯階段求值的。
閱讀全文
摘要: sizeof是C語言的一種單目操作符,如C語言的其他操作符++、--等。它并不是函數(shù)。sizeof操作符以字節(jié)形式給出了其操作數(shù)的存儲(chǔ)大小。操作數(shù)可以是一個(gè)表達(dá)式或括在括號(hào)內(nèi)的類型名。操作數(shù)的存儲(chǔ)大小由操作數(shù)的類型決定。
閱讀全文
摘要: sizeof()功能:計(jì)算數(shù)據(jù)空間的字節(jié)數(shù)
閱讀全文
摘要: 在網(wǎng)上和QQ群里廣發(fā)帖,尋求解決16進(jìn)制字符串CString 轉(zhuǎn)為 BYTE[] 數(shù)組的方法。費(fèi)盡周折在一個(gè)大學(xué)同學(xué)的幫助下,問題解決了!在這簡(jiǎn)單分析下加深印象,同時(shí)也希望對(duì)有需要的朋友有參考作用:
閱讀全文
摘要: 游戲規(guī)則很簡(jiǎn)單,如果你在調(diào)用new時(shí)使用了[],則你在調(diào)用delete時(shí)也使用[],如果你在調(diào)用new的時(shí)候沒有[],那么你也不應(yīng)該在調(diào)用時(shí)使用[]。
閱讀全文
摘要: ASSERT()是一個(gè)調(diào)試程序時(shí)經(jīng)常使用的宏,在程序運(yùn)行時(shí)它計(jì)算括號(hào)內(nèi)的表達(dá)式,如果表達(dá)式為FALSE (0), 程序?qū)?bào)告錯(cuò)誤,并終止執(zhí)行。如果表達(dá)式不為0,則繼續(xù)執(zhí)行后面的語句。
閱讀全文
摘要: 剛接觸VC編程的朋友往往對(duì)許多數(shù)據(jù)類型的轉(zhuǎn)換感到迷惑不解,本文將介紹一些常用數(shù)據(jù)類型的使用。
閱讀全文
摘要: 結(jié)構(gòu)體可以看做是一種自定義的數(shù)據(jù)類型,它還有一個(gè)很重要的特性,就是結(jié)構(gòu)體可以相互嵌套使用,但也是有條件的,結(jié)構(gòu)體可以包含結(jié)構(gòu)體指針,但絕對(duì)不能在結(jié)構(gòu)體中包含結(jié)構(gòu)體變量。
閱讀全文
摘要: 簡(jiǎn)單的來說,結(jié)構(gòu)體就是一個(gè)可以包含不同數(shù)據(jù)類型的一個(gè)結(jié)構(gòu),它是一種可以自己定義的數(shù)據(jù)類型,它的特點(diǎn)和數(shù)組主要有兩點(diǎn)不同,首先結(jié)構(gòu)體可以在一個(gè)結(jié)構(gòu)中聲明不同的數(shù)據(jù)類型,第二相同結(jié)構(gòu)的結(jié)構(gòu)體變量是可以相互賦值的,而數(shù)組是做不到的,因?yàn)閿?shù)組是單一數(shù)據(jù)類型的數(shù)據(jù)集合,它本身不是數(shù)據(jù)類型(而結(jié)構(gòu)體是),數(shù)組名稱是常量指針,所以不可以做為左值進(jìn)行運(yùn)算,所以數(shù)組之間就不能通過數(shù)組名稱相互復(fù)制了,即使數(shù)據(jù)類型和數(shù)組大小完全相同。
閱讀全文
摘要: 本篇是一篇介紹指針的本質(zhì)是什么。 在相當(dāng)一部分的C++教程中,講到指針時(shí),基本上都會(huì)舉swap(int a,int b)這個(gè) 數(shù)據(jù)交換的例子。我也同樣愿意舉這個(gè)例子作為講述指針的開始。
閱讀全文
摘要: 在編程工作中常會(huì)遇到在一個(gè)“類”中通過函數(shù)指針調(diào)用成員函數(shù)的要求,如,當(dāng)在一個(gè)類中使用了C++標(biāo)準(zhǔn)庫中的排序函數(shù)qsort時(shí),因qsort參數(shù)需要一個(gè)“比較函數(shù)”指針,如果這個(gè)“類”使用某個(gè)成員函數(shù)作“比較函數(shù)”,就需要將這個(gè)成員函數(shù)的指針傳給qsort供其調(diào)用。本文所討論的用指針調(diào)用 “類”的成員函數(shù)包括以下三種情況:
閱讀全文
摘要: 考慮數(shù)組的指針的時(shí)候我們要同時(shí)考慮類型和維數(shù)這兩個(gè)屬性。換一句話,就是說一個(gè)數(shù)組排除在其中存儲(chǔ)的數(shù)值,那么可以用類型和維數(shù)來位置表示他的種類。
閱讀全文
摘要: 指針,在C/C++語言中一直是很受寵的;幾乎找不到一個(gè)不使用指針的C/C++應(yīng)用。用于存儲(chǔ)數(shù)據(jù)和程序的地址,這是指針的基本功能。用于指向整型數(shù),用整數(shù)指針(int*);指向浮點(diǎn)數(shù)用浮點(diǎn)數(shù)指針(float*);指向結(jié)構(gòu),用對(duì)應(yīng)的結(jié)構(gòu)指針(struct xxx *);指向任意地址,用無類型指針(void*)。
有時(shí)候,我們需要一些通用的指針。在C語言當(dāng)中,(void*) 可以代表一切;但是在C++中,我們還有一些比較特殊的指針,無法用(void*)來表示。事實(shí)上,在C++中,想找到一個(gè)通用的指針,特別是通用的函數(shù)指針簡(jiǎn)直是一個(gè)“不可能任務(wù)”。
C++是一種靜態(tài)類型的語言,類型安全在C++中舉足輕重。在C語言中,你可以用void*來指向一切;但在C++中,void*并不能指向一切,就算能,也失去了類型安全的意義了。類型安全往往能幫我們找出程序中潛在的一些BUG。
閱讀全文
摘要: c++博大精深,這是很多了解c++的人的感覺。越是深入,越是覺得她會(huì)給你很好的訓(xùn)練---讓你成為真正的程序設(shè)計(jì)者。
我想從她的初始化工作著手,試圖展現(xiàn)其一角,希望能有助于您提高學(xué)c++和程序設(shè)計(jì)的興趣---然后,去發(fā)現(xiàn)、開拓吧,當(dāng)你把你的智慧融入進(jìn)去以后,一行行程序就不僅是程序了,因?yàn)樗陀辛松?nbsp;
閱讀全文
摘要: 這是一篇我所見過的關(guān)于指針的最好的入門級(jí)文章,它可使初學(xué)者在很短的時(shí)間內(nèi)掌握復(fù)雜的指針操作。雖然,現(xiàn)在的Java、C#等語言已經(jīng)取消了指針,但作為一個(gè)C++程序員,指針的直接操作內(nèi)存,在數(shù)據(jù)操作方面有著速度快,節(jié)約內(nèi)存等優(yōu)點(diǎn),仍是很多C++程序員的最愛。指針就像是一把良劍,就看你怎么去應(yīng)用它!
閱讀全文