c 知識回顧

2021-10-01 20:47:14 字數 1524 閱讀 3900

靜下心來回顧學過的知識,隨腦中思考到的書寫。

相對c語言更多了引用、指標的更多使用,增加類的實現物件,類的建構函式和析構函式,類的繼承等等。需要理解類繼承過程中物件的建構函式和析構函式的執行順序,虛函式的作用,友元函式等。當然還有非同步、vector、map等,這些掌握不深,先不提。

類和物件

類是乙個簡單的物件的魔性,由變數和函式組成,物件使用這些變數來存放資訊,呼叫這些函式來完成操作。

c++允許在類中可以宣告常量,不充許對他進行賦值,否則出錯;但宣告前加static變為靜態變數則可以。(具體原因需了解常量、靜態變數的儲存區域,以及類的儲存區域)

建構函式和通用方法的區別:

建構函式名字和類名一樣;系統在建立某個類的例項時會第一時間呼叫這個類的建構函式;建構函式永遠不會返回任何值;每個類中至少有乙個建構函式,如果沒有在類中定義乙個建構函式,編譯器則會執行無參的預設建構函式。

this指標

靜態成員函式不存在this指標,非靜態成員函式存在this指標,「this指標」指向成員函式作用的物件,在成員函式執行的過程中,正是通過「this指標」才能找到物件所在的位址,因而也就能找到物件的所有非靜態成員變數的位址。

逗號運算子

eg:x=(w1,w2,…,wn),對所有的wi表示式從左到右開始計算直到wn,最後將wn的值賦給x

字串在自定義的字串中,『\0』為字串結束的標誌,如果在『\0』之後還有內容,不論後面是什麼內容均被忽略。如果是輸入的字串的花,遇到空格或製表符後,只將第乙個空格或製表符前的字串賦值,後面的均不算入。

建構函式的執行順序;先呼叫繼承類/基類的建構函式(多重繼承時,按照宣告派生類時基類出現的次序),再是本類子物件對應類的建構函式,最後是自身建構函式。

常見的運算子中優先順序:

!> 算數運算子》關係運算子》&& 、||>賦值運算子》逗號運算子

常用數學函式()

cox(x):x的余弦

sqrt(x):x的平方根,x>0

pow(x,y):x的y次方

exp(x):e的x次方

fab(x):x的絕對值

log(x):x的自然對數

注:x、y為double型,返回值型別為double

常用字元函式級測試字元的函式

isalnum(c ):判c為大小寫字母或十進位制數字

isalpha(c ):判c為大小寫字母

isdigit(c ):判c為十進位制數字

islower(c ):判c為小寫字母

注:返回值為int行

和的區別:

是舊的c標頭檔案,對應的是基於char *的字串處理函式,是的std版;

是包裝類std的c++標頭檔案,對應的是新的string類

指標指標陣列int *p[4]:它是由4個指向整形資料的指標元素組成

函式的指標 int (*p)(int ,int):p是指向函式的指標變數,指標變數p指向的函式的型別是int

常指標 int * const p:p是常指標,其值是固定,即其指向不能變

const int *p:p是指向常量的指標變數,不能通過p改變其指向的物件的值

C 生僻知識回顧

priority queue int a 大根堆 priority queue int,vector int greater int b 小根堆 其中如果堆中的結點不是基本資料型別而是自定義的資料型別的時候,需要進行過載運算子的操作,這裡以複數的類為例,過載模比較運算子。struct complex...

c 知識點回顧

過載只與函式的引數有關,而與函式的返回型別無關 int 形參 實參 0 char short int double 形參 實參 float double 用省略號 表示,即函式可以有任意個任意型別的引數。如,int printf const char format,在乙個函式中,可指定多個 甚至全部...

c 基礎知識回顧

1.資料型別和類。所有程式設計都是處理輸入和輸出。關於輸入引數,從右至左把引數入棧,這樣根據棧基址,可以定位第乙個引數。因為很多函式是引數數量不定的,比如printf.關於輸出,記得輸出時,一般是把值放入eax 暫存器,所以一般資料型別,直接放入返回值資料,暫存器可以裝下,而返回物件,會返回物件的指...