第八章 函式高階

2021-06-22 23:23:33 字數 1521 閱讀 8492

在函式宣告和函式定義前加上inline

乙個簡單的計算平方的**:

#include using namespace std;

inline double square(double x)

;int main()

內聯函式的使用:函式經常呼叫,函式體較小,不包含迴圈之類的

引用變數的主要用途是用作函式的形參

引用變數必須宣告是初始化,而不是先宣告在賦值

int & banana;

//先宣告引用變數

函式模板的侷限性:

template

void f(t a, t b)

a = b //如果t為陣列,不成立

if(a > b) //如果t為結構,不成立

編寫的模板很可能無法處理某些型別

函式模板顯示具象化

乙個結構體:

struct job

假設只需交換salary和floor成員,而不交換name成員

#include //函式模板原型

template void swap(t &a, t &b);

struct job

;//explicit specialiation 顯示具體化

template <> void swap(job &j1, job &j2);

void show(job &j);

int main()

; job li = ;

show(zhang);

show(li);

swap(zhang, li);

show(zhang);

show(li);

cin.get();

}template void swap(t &a, t &b) //交換普通變數

template <> void swap(job &j1, job &j2)//交換結構體的兩個成員變數

void show(job &j)

隱式例項化、現式例項化(explicit instantiation)、顯式具體化(explicit specialization)

顯式例項化的宣告:

template void swap(int, int);

swap()模板將生成乙個使用int型別的例項

顯式具體化的宣告:

template <> void swap(int &, int &);

template <> void swap(int &, int &);

上面兩行等價

template void swap(t &, t &);//模板原型

template <> void swap(char &, char &);//顯示具體化

int main(void)

第八章 指標 第八章 指標

1 什麼是位址 include using namespace std int main 11 在堆中建立對像 我們既然可以在堆中儲存變數,那麼也就可以儲存對像,我們可以將對像儲存堆中,然後通過指標來訪問它 include using namespace std class human 14 在建構...

第八章 類的高階

訪問修飾符 公開訪問 用pbulic關鍵字。受保護訪問 用protected關鍵字。預設訪問 沒有訪問。私有訪問 用private關鍵字。封裝 組裝,累的定義 屬性和行為 資訊隱藏 1.訪問修飾符public protected 預設 private 2.方法的實現 呼叫者無需知道方法的具體步驟,只...

第八章(筆記)

能在 中進行記憶體單元的定址的暫存器只有4個,分別是bx si di bp 其中bx bp 是基址,bx對應的段位址是ds,bp對應的段位址是ss si di 是變址,單獨使用時段位址是ds,組合使用段位址是跟隨組合的基址對應的段位址 中進行記憶體單元定址彙總 si di bx bp 常量 si 常...