VC 學習筆記(二)

2021-05-25 20:19:30 字數 1720 閱讀 8015

1.

c語言的結構體是不能有成員函式的,但是

c++ 

中可以的。這樣的話

c++中的結構體和類的作用是相同的,但是

c++ 

中的結構體和類也是有區別的區別就是類可以定義其訪問許可權,而結構體不同,不能定義其訪問許可權。結構體和類在

c++中是可以通用的。 2.

類是抽象出一些基本屬性,物件是具有具體屬性值。物件是具體的,有生命的。類的例項,就是產生乙個類的物件。 3.

函式的過載,一般是引數不同時,才能構成函式的過載,即函式名相同的,但是引數的個數不一樣的時候構成函式的過載,但是也有例外,帶預設值的函式不能構成函式的過載。 4.

指標才用的到指向操作符-> this

指標 產生物件之後,並不是類。類是抽象的並不占用記憶體空間,只有例項化之後才占用記憶體空間。 5.

類的繼承 class fish 

:publish animal {}  6.

protected: 方法可以被子類呼叫但是不能在外部物件中被實現。保護的方法,在物件裡都不可以訪問。 7.

類的繼承方法 class fish 

:publish animal {}class fish 

:protectedanimal {}class fish 

:private animal {} 8.

構造物件是,基類的物件是先被構造的,然後是構造子類的物件,當進行析構的時候,子類先析構,然後父類在析構。 9.

對於乙個類來說,預設可以不寫建構函式,但是當我們自己定義乙個建構函式的時候,無論是帶引數還是不帶引數,c++ 

編譯器都不會為我們提供預設的建構函式了,以我們自己的建構函式為準。

10.類的繼承的過程中,有可能父類構造的時候需要引數,則子類的建構函式中必須向父類提供其構造所需要的引數。

class animal }

class fish : public animal

11 類中常量的初始化,

private

:const int a

;此時應該在構造的時候

fish

():animal

(400

,300),a

(1)

12.區別函式的覆蓋與函式的過載

。函式的覆蓋,發生在父類和之類之間的,函式的過載發生在乙個類之間的,當我們繼承乙個類的時候,重寫乙個父類的函式就是函式覆蓋。

13.c++的多型型,虛函式,用一句話總結就是:我們在基類中相應的函式前面加上

virtual 

如果子類有這個函式則呼叫子類的,子類沒有則呼叫父類的函式。

前提條件是你傳遞的是子類的位址。 14

void  fn(

animal *pan)

main()

c++ 的純虛函式,沒有函式實體的虛函式,子類必須給出函式的實現過程,否則不能根據這個類來實現某個物件。兩個要求:

1.必須的 

2.無法直接定義函式的具體函式。

15 c++ 引用和指標的區別,引用不需要佔據記憶體空間,相當於乙個變數的別名,但是指標是需要佔據記憶體空間的,我們分配一塊記憶體空間去儲存另乙個變數的記憶體位址。定義引用的方法 

int &b=a; 

引用要慎用,主要用於

mfc 

函式的傳遞引數。

void change(

int &a

, int &b)

change(x,y);

實際上只的是同乙個記憶體空間。

VC 學習筆記(二) VC 與C VB和C

羅馬不是一天建成的,vc 的也不是憑空產生的 它一直標榜自己的從c發展而來的。vb好像是專門為了羞辱vc 而建立的。c 呢,是微軟類c語言的新秀 其實也不新了。亂吧?貌似挺亂的,其實這裡有章可循。純粹的c 是從c發展而來的,是要用oo這個理念來度化廣大c程式設計師,讓他們離苦得樂的。純粹的c 語言很...

VC學習筆記

1 全域性變數和類在入口函式前執行。2 lpctstr為長字串,賦值要用l string 的格式。3 新增和刪除成員函式都是在類屬性裡操作的。4 vs2008對選單的設定都是在屬性裡,新增command訊息也是在相應類的屬性裡。5 settimer 可以隨時使用。設定之後便可以加訊息處理。6 在標頭...

VC學習筆記

程式的建立步驟 1建立框架和對話方塊 2 建立對話方塊對應的對話方塊類 cpassworddlg 由cdialog 派生 並為此對話方塊類增加成員變數 用於獲取放置於編輯框中的密碼內容 m strpassword 3修改對話方塊類的建構函式,對新增加的對話方塊成員變數賦初值 4 在程式主檔案 pas...