原创 MFC中如何生成release版本

VC6.0發佈版需要兩個地方都設置靜態鏈接庫: 1.project->settings->general->Microsoft Foundation Classes:Use MFC in a Static Library. 2.在菜

原创 二分法(算法)

 查找算法中的“二分法”是這樣定義的:       給定N個從小到大排好序的整數序列List[],以及某待查找整數X,我們的目標是找到X在List中的下標。即若有List[i]=X,則返回i;否則返回-1表示沒有找到。       二分

原创 多態性:虛函數

      先來講講賦值兼容規則。        前面說過,派生類如果是從基類公有繼承的,則它會包含基類中除構造函數和析構函數外的所有成員,基類的公有成員也成爲派生類的公有成員,又因爲對象只能訪問類的公有成員,所以基類對象具有的功

原创 多態性:運算符重載爲類的成員函數

      運算符重載爲類的成員函數後就可以像其他成員函數一樣訪問本類的數據成員了。在類的外部通過類的對象,可以像原運算符的使用方式那樣使用重載的運算符,比如,“+”運算符被重載爲類A的成員函數後,A的對象a和其他對象b就可以這樣進行加

原创 異常處理

       我們開發的軟件一般按照正常的流程操作時運行不會出問題,但是用戶不一定會根據軟件工程師的想法來操作軟件,而且往往隨機性很大,另外,軟件的運行環境也會改變,例如硬盤空間不足、文件被移走,這些都可能會導致軟件出現異常,甚至崩潰。

原创 C語言:前言

指針是C語言中廣泛使用的一種數據類型。運用指針編程是C語言最主要的風格之一。 利用指針變量可以表示各種數據結構;能很方便地使用數組和字符串;並能象彙編語言一樣處理內存地址,從而編出精練而高效的程序。指針極大地豐富了C語言的功能。 學習指

原创 如何生成自己的靜態庫(lib)文件

       打開VS2010,建立一個win32控制檯程序,然後打開項目--Tv屬性(如圖1),打開Tv屬性頁(如圖2),在右邊配置類型處選擇靜態庫(lib)。 然後我們就可以寫我們的頭文件和cpp源文件了。寫完後編譯下就可以在目錄下找

原创 繼承與派生:派生類從基類繼承的過程

派生類從基類繼承的過程可以分爲三個步驟:吸收基類成員、修改基類成員和添加新成員。吸收基類成員就是代碼複用的過程,修改基類成員和添加新成員實現的是對原有代碼的擴展,而代碼的複用和擴展是繼承與派生的主要目的。        寫一個僱員類和

原创 多態性:運算符重載爲類的友元函數

       友元函數通過類的對象可以訪問類的公有、保護和私有成員,也就是類的所有成員友元函數都能訪問到。所以運算符重載爲類的友元函數以後也可以訪問類的所有成員。        與運算符重載爲成員函數時不同的是,重載的友元函數不屬於任

原创 C語言:C語言指針的概念

在計算機中,所有的數據都是存放在存儲器中的。一般把存儲器中的一個字節稱爲一個內存單元,不同的數據類型所佔用的內存單元數不等,如整型量佔2個單元,字符量佔1個單元等。爲了正確地訪問這些內存單元,必須爲每個內存單元編上號。根據一個內存單元的編

原创 C++程序設計必知:常引用、常對象和對象的常成員

數據的封裝實現了數據的隱藏,讓數據更安全,通過局部變量、全局變量、類的數據成員、類的靜態成員及友元可以實現數據的共享,這樣又降低了數據的安全性。有些數據是需要共享而又不能被改變的,那麼這時候我們就要將其聲明爲常量。        我們

原创 繼承與派生:作用域分辨符

       訪問派生類的成員有可見性和唯一性兩個問題,我們只能訪問到具有唯一性的可見成員。        先說說可見性的問題。如果有兩個以上具有包含關係的作用域,外層作用域中的標識符在內層作用域中沒有同名標識符則它在內層作用域中也是

原创 繼承與派生:派生類對基類成員的訪問控制之公有繼承

  派生類從基類繼承時有三個步驟,第一個步驟是吸收基類成員,吸收了基類中除構造函數和析構函數之外的所有數據成員和函數成員,第二個步驟就是修改基類成員,包括修改對基類成員的訪問屬性和覆蓋基類成員,第三個步驟是添加新成員。第二個步驟中修改對

原创 繼承與派生:虛基類及其派生類的構造函數

       1.虛基類的概念及用法        前面說過,如果派生類的全部或者部分基類有共同的基類,那麼派生類的這些直接基類從上一級基類繼承的成員都具有相同的名稱,定義了派生類的對象後,同名數據成員就會在內存中有多份拷貝,同名函數

原创 數組、指針和字符串:對象指針

       一.什麼是對象指針        每個變量都佔有一定的內存空間,對象同樣也需要佔用內存空間。對象有數據成員和函數成員兩種成員,但是實際上只有對象的數據成員會佔用內存,函數成員則不會。我們可以通過對象名引用對象,也可以通過