C++遠(yuǎn)征
[TOC]
一、函數(shù)參數(shù)默認(rèn)值
1.函數(shù)參數(shù)默認(rèn)值的聲明

函數(shù)參數(shù)默認(rèn)值.png
?
如:void fun(int i, int j, int k=10);?
或:void fun(int i, int j=5, int k=10);?
或:void fun(int i=0, int j=5, int k=10);
2.函數(shù)參數(shù)默認(rèn)值的定義

函數(shù)參數(shù)默認(rèn)值2.png
?
最好是在聲明處給初值,而定義處不要給初值。
3.函數(shù)參數(shù)默認(rèn)值賦值

函數(shù)參數(shù)默認(rèn)值3.png
二、函數(shù)重載
1.函數(shù)重載的概念

函數(shù)重載1.png
2.函數(shù)重載的原理

函數(shù)重載2.png
? 編譯器編譯是展開為帶參數(shù)數(shù)據(jù)類型的別名,用以區(qū)分同名重載函數(shù)
三、內(nèi)聯(lián)函數(shù)
1.內(nèi)聯(lián)函數(shù)的概念

內(nèi)聯(lián)函數(shù)1.png
? ? 編譯時(shí)編譯器將代碼展開至調(diào)用處
2.內(nèi)聯(lián)函數(shù)的好處
內(nèi)聯(lián)函數(shù)能節(jié)省調(diào)用函數(shù)的開銷。
-
那為什么不是所有函數(shù)都聲明成內(nèi)聯(lián)函數(shù)呢?
?
(1)內(nèi)聯(lián)編譯是建議性的,由編譯器決定。?
(2)邏輯簡(jiǎn)單,調(diào)用頻繁的函數(shù)才建議使用內(nèi)聯(lián)。?
(3)遞歸函數(shù)無(wú)法使用內(nèi)聯(lián)方式。