c 程式設計課程總結

2022-06-27 23:54:10 字數 1947 閱讀 2584

目錄類與物件

1.物件:(系統中用於描述客觀事物的乙個實體,系統的基本單位),由一組屬性和一組行為組成。

2.類:具有相同屬性和行為的一組物件的集合

3.封裝:把物件的屬性和服務結合承乙個獨立的系統單位,並盡可能隱蔽物件的內部細節

4.繼承:特殊類的物件具有其一般類的全部屬性和行為

5.多型性:特殊類可以具有不同於一般類的屬性和行為

計算機內部資訊->控制資訊:指令/控制字

->資料資訊:數值資訊/非數值資訊

原/反/補碼是將真值轉化為機器數的方式。

正數:轉化為二進位制數,最高位新增符號位,0為正,1為負(三碼相同)

負數:1.原碼求法同正數

2.反碼:符號位同原碼,其它位取反

3.補碼:符號為同原碼,其它位取反加一

1.類的乙個不安全操作

class a 

private:

int x;

}a;main函式中:

int &temp=a.get();

此時修改temp的值會使a.x受到修改。

2.(1)類的資料成員不可在定義中賦予初值

(2)類中static修飾的變數可以賦予初值

class a ;

int a::a=5;

3.組合類的(複製)建構函式

line::line(point xp1,point xp2):p1(xp1),p2(xp2);

line::line(line &l):p1(l.p1),p2(l.p2);

(1)括號中為形參,單冒號後的括號中的引數**於第乙個括號

(2)成員物件會根據引數選擇相應建構函式

add:建構函式的幾種表示

<1>a(string name)

<2>a::a(string name):name(name) {}

<3>a(string name)

前兩種是對的,後一種是錯的

4.enum型別的理解

可以理解為兩部分:

(1)全域性const定義了enum內的識別符號

(2)資料型別本身可看做int

5.類的相互物件引用不會報錯,但無法執行(引用必須初始化,然而無法初始化)

例子:

class fred;

class barney ;

class fred ;

6.前向引用宣告只是宣告,在完整定義後才可呼叫。

class fred;

class barney

private:

fred &x;

};class fred ;

//int f(fred qwq) {}應寫在這裡

7.複製建構函式必須使用引用傳遞,避免遞迴呼叫

當乙個物件需要以值方式傳遞時,編譯器會生成**呼叫它的拷貝建構函式以生成乙個複本。如果類a的拷貝建構函式是以值方式傳遞乙個類a物件作為引數的話,當 需要呼叫類a的拷貝建構函式時,需要以值方式傳進乙個a的物件作為實參;而以值方式傳遞需要呼叫類a的拷貝建構函式;結果就是呼叫類a的拷貝建構函式導 致又一次呼叫類a的拷貝建構函式,這就是乙個無限遞迴。

8.c++中文佔兩個位元組,要使用字元陣列或string儲存

9.關於指標的幾點

(1)p[i]等價於*(p+i)

(2)在類中運用指標:

一要過載等號和複製建構函式,且要完成深複製,防止重複釋放記憶體。(此時會導致main函式返回值不為0)

二要及時釋放記憶體,一方面是過載析構函式,另一方面是深複製時要把原本的記憶體空間釋放(這會導致記憶體碎片的問題,不過在現代編譯器中已用演算法解決)

三是過載了(複製)建構函式後,不會再生成預設的建構函式,要手動定義。

10.複製建構函式在等號賦值時不會呼叫,此時需要過載等號。

注意!!!過載等號要在operator前加&,不然會導致程式異常結束。

c 課程總結

運算子過載 運算子過載是一種重新規劃運算子的功能,比如我們建立了乙個類,而類和類相加不能得到我們想要的結果,所以我們需要重新規劃一下運算子的功能。比如 class a int x,y a a,b a.x 1 b.x 1 a.y 2 b.y 2 a c c a b 無效,因為a與b都是自己創造的類,如...

c語言課程總結

這個星期的c語言課程學習結束了,學習c是因為很多語言都具有c的影子,作為前端學習,雖然不是後端,但是對後端語言的學習也是必不可少的,而且前端學習涉及的東西太廣泛,所以,擁有乙個程式設計的思維,和乙個良好的程式設計習慣是必不可少的,c的學習正是對我這方面的鍛鍊和提高,現在我自己總結一下這個星期的學習,...

c 語言程式設計課程筆記

18數學三班 崔珊 2018212819 一 知識點概括性總結 1.c程式處理的資料型別有常量和變數兩種基本形式。常量 整型常量 包括正整數 負整數和零在內 的所有整數 實型常量 也稱實數 浮點數 字元型常量 用一對單引號括起來的任 意字元 字串常量 用一對雙引號括起來的零 個或多個字元 資料型別 ...