C 1 4次課程複習

2021-08-28 19:56:39 字數 3209 閱讀 9786

c++第一次課程

1.c語言是面向過程的程式設計模式,核心是以函式為模組.

物件導向引入了新的概念,可以更好地模擬現實世界,從而提高構建複雜系統的能力.

c++第二次課程

1.函式概念複習:函式定義,函式宣告,函式的呼叫,函式的引數(形參,實參)函式引數傳遞的重要原則:函式的引數傳遞是單向的,實參的值傳遞給形參,值傳遞.形參的改變不影響實參.

2.內聯函式:內聯函式不是在呼叫的時候發生控制轉移,而是在編譯的時候將函式**嵌在呼叫的地方,減少系統開銷,和c語言中的帶引數的巨集定義類似. 關於函式呼叫:函式呼叫是會有一定系統開銷的,建議將頻繁呼叫卻簡短的函式做成內聯函式.在函式定義的時候:inline 型別說明符 函式名(含型別說明的參數列)

3.帶有預設形參值得函式:在定義函式的時候,可以給形參乙個預設的值.如果沒有傳遞實參,該形參將具有預設值,如果傳遞了實參,該形參值就是實參值. 注意:定義預設形參的規則,預設形參必須在引數列表的右邊(從右向左),由預設值得形參必須在形參列表的最後.在相同的作用域(指直接包含著函式原型說明的大括號所界定的範圍)內,不允許在同乙個函式的多個宣告中對同乙個引數的預設值重複定義,即使前後定義的值相同也不行.

4.函式過載:兩個以上的函式,具有相同的函式名,但形參的個數或者型別不同,編譯器根據實參和形參的型別及個數的最佳匹配,自動確定呼叫哪乙個函式,這就是函式的過載.函式過載的優點:可以提高程式的可讀性.函式過載的條件:①函式名相同.②函式必須要有不同,形參的型別或者數量不同.注意:僅僅是函式返回值不同,不能實現函式過載.

5.c++的系統函式

stdio.h math.h cstdio cmath

6.如何查詢系統函式的使用方法 cppreference

c++第三次課程

1.抽象:物件導向方法中的抽象,是指對具體問題(物件)進行概括,抽出一類物件的公共性質並加以描述的個過程.抽象包括兩個方面:資料抽象和行為抽象(功能抽象,**抽象).

2.封裝:封裝就是講抽象得到的資料和行為(或功能)相結合,形成乙個有機的整體,也就是將資料與運算元據的函式**進行有機結合,形成「類」,其中的資料和函式都是類的成員.關鍵字public和private是用來指定成員的不同訪問許可權的.通過封裝使一部分成員充當類與外部的介面,而將其他成員隱蔽起來,這樣就達到了對成員許可權的合理控制,使不同類之間的相互影響減少到最低的限度,進而增強資料的安全性和簡化程式編寫工作.

3.繼承:c++提供了繼承機制,允許程式設計師在保持原有類特性的基礎上,進行更具體、更詳細的說明.

4.多型:從廣義上說,多型性是指一段程式能夠處理多種誒性物件的能力,在c++語言中,這種多型性可以通過強制多型,過載多型,型別引數化多型,包含多型4中形式來實現.

5.類:類就是用來體現物件導向中封裝概念的.關鍵字是class.和c語言中的結構體相比,不僅可以封裝資料,還可以封裝行為.封裝行為體現在類裡面可以寫函式,這個函式就是模擬類的某個興文.類本質上和結構體類似,也是一種自定義資料結構,但是比結構體更強大.

類裡面的成員:資料成員(用於模擬有哪些資料)函式成員(用於模擬實體有哪些行為)

6.物件:就是類型別的乙個變數,也稱為是這種型別的乙個例項(個體).物件會具有類所定義好的資料和行為.行為實際的執行一般都是要由具體的物件來發起和完成.

7.類的成員函式:①成員函式的實現:函式的原型宣告要寫在類體中,原型宣告說明了函式的參數列和返回值型別.而函式的具體實現是寫在類定義之外的.與普通函式不同的是,實現成員函式時要指明類的名稱.具體形式為:

返回值型別 類名::函式成員名(參數列)

②成員函式呼叫中的目的物件:呼叫乙個成員函式與呼叫普通函式的差異在於,需要使用「.」,操作符指出呼叫所針對的物件,這物件在本次呼叫稱為目的物件.

③帶預設形參值的成員函式:成員函式可以是由預設形參值得函式,成員函式也可以過載.

④內聯成員函式:成員函式也可以被宣告為內聯函式.

8.類成員的訪問控制:

從類外部的角度來訪問類的成員,是否可以訪問到這個成員.語法上的實現?指定成員的訪問屬性:public:在類的外部可以訪問(聽過物件來訪問)private:在類的外部不能訪問類的成員,自己的成員函式裡面訪問自己的資料成員不受影響,一定可以訪問的.protected:在類的外部不能訪問類的成員,預設的屬性是私有.訪問控制的好處是:可以實現資料隱藏,把不需要外界知道的資料可以隱藏起來.

c++第四次課程

1.封裝:和結構體相比,物件導向中的封裝不但封裝了資料,還封裝了行為.

2.訪問屬性:在類的外部通過類的物件是否可以訪問到類的成員.

(公有,私有,保護)體現了資料隱藏的設計思想

3.介面:類中所定義的公有函式成員,通過他們,外界也可以間接地訪問類中的私有成員,所以,他們相當於是外界和私有成員之間的橋梁,因此成為介面.

4.建構函式:

c++中支援一種新的初始化語法形式.int a(5)//int a=5建構函式的目的是用來對物件進行初始化.

建構函式的性質:

1)當建立乙個物件的時候,系統會自動呼叫建構函式.

2)所以我們可以再建構函式中完後才能對物件成員的初始化.

3)建構函式是共有的.

4)建構函式的名字特殊,就是類的名字.

5)建構函式沒有返回值,不需要寫void.

6)在建立物件的時候,必須要呼叫對應的建構函式.

7)建構函式是可以過載的.

8)如果類沒有定義仍和的建構函式,系統會自動提供乙個無參的什麼都不做的建構函式.預設建構函式.一旦自定義了建構函式,就沒有這個預設建構函式了.

注意:當建構函式由預設形參值的時候,不要和其他建構函式的呼叫形式起衝突.

5.析構函式

析構函式的目的:在物件小王的時候做一些和物件相關的清理工作.

析構函式的特點:

1)在物件消亡的時候由系統呼叫的,適合做最後的清理工作.

2)~類名()

3)析構函式沒有引數,沒有返回值.

4)析構函式不能過載.

5)析構函式往往用於歸還動態申請的記憶體空間.

6.複製建構函式

student s1(1,20,80,100);

student s2(s1);

被稱為複製建構函式,應該是同乙個類的物件.

複製建構函式的作用就是控制如何去複製構造,再通過複製構造來建立新物件時自動呼叫的.

複製建構函式的特點:

1)名字

2)引數,同類物件的的引用

3)如果沒有寫複製建構函式,系統會有乙個預設複製建構函式,實現的是完全複製

4)通過自定義複製建構函式,我們可以控制複製構造的過程,從而滿足特定的需求

只要建立了乙個新的物件,就必然會呼叫複製建構函式或者建構函式.

C 14新特性總結

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!c 14這一繼c 11之後的新的c 標準已經被正式批准,正在向iso提交,將於年內發布。c 之父bjarne stroustrup說道,儘管與c 11相比,c 14的改進 有意做的比較小 但是仍然為使用者 帶來了極大的方便 是實現使c 對新手更為友...

C 14新特性總結

c 14這一繼c 11之後的新的c 標準已經被正式批准,正在向iso提交,將於年內發布。c 之父bjarne stroustrup說道,儘管與c 11相比,c 14的改進 有意做的比較小 但是仍然為使用者 帶來了極大的方便 是實現使c 對新手更為友好 這一目標的步驟之一。在c 的時間表中,c 14按...

C 14 新特性總結

自 c 14 這一繼c 11 之後的新的 c 標準已經被正式批准,正在向 iso 提交,將於年內發布。c 之父 bjarne stroustrup 說道,儘管與c 11 相比,c 14 的改進 有意做的比較小 但是仍然為使用者 帶來了極大的方便 是實現使c 對新手更為友好 這一目標的步驟之一。在 c...