1、內聯函式
為了程式執行的高效性,將比較短小的函式設定為inline函式,在編譯時直接進行替換,而不是在執行時再進行函式呼叫,這樣節省了執行時間。
2、引用
引用是一別名,對引用的操作會直接影響到相應的記憶體值。在函式傳參時,引用可以不用複製記憶體塊,對於結構比較大的型別來說,比較划算。
3、預設引數
函式定義時,設定預設引數,這樣在呼叫函式時,可以不輸入這個引數,而採用預設的引數。
4、函式過載、模板
過載的意思是同乙個函式名,可以具有不同的處理動作,這就叫做過載,它的要求是函式的特徵標不同,即引數個數或者型別至少有乙個不同。如:
void swap(int &a,int &b);
void swap
(int *a,int *b,int n);
對於執行類似的操作的函式,但是操作值型別不同時,如int char double…,可以用設定函式模板。程式在執行時,根據函式模板例項化函式。
template //
宣告 void swap(t &a,t &b);
main()//
主函式
template //
定義 void swap(t &a,t &b)
5、模板過載
模板的要點在於運算元使用共同的演算法,即有共同點採用模板以降低**冗餘。
而過載的要點在於操作的名稱相同,即函式名字相同。對於不同的運算元需要使用相同含義的函式,但是具體操作不同,這時候可以用模板過載。如
template
void swap(t &a,t &b);
template
void swap
(t *a,t *b,int n);
6、函式模板具體化
編寫的模板有可能無法處理某些型別(總有特殊情況),即只好特別宣告乙個模板來處理這種情形。程式執行時,程式選擇有優先順序:非模板》顯示具體化》模板
c primer plus學習筆記
1.變數名命名規則 重要的 1 有含義 2 只能用字母字元 數字和下劃線 3 第乙個字元不能是數字 4 區分大小寫 5 不能用c 關鍵字 2.整型 1 無符合型別不能表負值 2 char short 16 int short long 32,int 和longlong 64,long c 11 寬度...
C PrimerPlus學習筆記
if語句中判斷恒等,將常量放前,防止由於 寫成 造成的難以查詢的bug。if 0 count 若寫成 0 count 會報錯,count 0 則不會命名空間 using namespace std cout one cout two std cout one std cout two using s...
C Primer Plus學習筆記
1.組合語言是特地的cpu設計所採用的一組內部指令的助記符,不同的cpu型別使用不同的cpu c給予你更多的自由,也讓你承擔更多的風險 自由的代價是永遠的警惕 2.目標 檔案 可執行檔案和庫 3.可以用畫幾個盒子的方式來跟蹤乙個程式的變數 一門語言的語法就是一套規則,用於管理這種語言中的合法語句組織...