c 模板 2 函式模板

2021-10-17 20:58:39 字數 866 閱讀 9044

什麼是函式模板?

通過下面的例子,我們來了解一下什麼是函式模板。

假設:我們需要兩個資料交換的函式,例如int資料交換和double資料交換。我們的**實現如下:

#include

using

namespace std;

// int資料交換

void

swapint

(int

& a,

int& b)

// double資料交換

void

swapdouble

(char

& a,

char

& b)

intmain()

我們需要使用兩個函式swapint和swapdouble來實現int資料交換和double資料交換。

如果,我們使用函式模板,只需要乙個函式模板即可,不僅實現了int資料交換和double資料交換,同時,此函式模板還可以實現char資料交換等等。**如下:

#include

using

namespace std;

// 函式模板,將型別作為引數傳遞進來,傳遞int就是int型別交換,傳遞double就是double型別交換

// t是乙個通用的資料型別

template

<

typename t>

// typename 和 class 都是一樣的,用哪個都可以

void

myswap

(t& a,t& b)

intmain()

用模板是為了實現泛型,可以減輕程式設計的工作量,增強函式的重用性。

C 模板 函式模板和模板函式

1.函式模板的宣告和模板函式的生成 1.1函式模板的宣告 函式模板可以用來建立乙個通用的函式,以支援多種不同的形參,避免過載函式的函式體重複設計。它的最大特點是把函式使用的資料型別作為引數。函式模板的宣告形式為 template 返回型別 函式名 參數列 其中,template是定義模板函式的關鍵字...

C 模板 函式模板和模板函式

1.函式模板的宣告和模板函式的生成 1.1函式模板的宣告 函式模板可以用來建立乙個通用的函式,以支援多種不同的形參,避免過載函式的函式體重複設計。它的最大特點是把函式使用的資料型別作為引數。函式模板的宣告形式為 template 返回型別 函式名 參數列 其中,template是定義模板函式的關鍵字...

C 模板 函式模板和模板函式

1.函式模板的宣告和模板函式的生成 1.1函式模板的宣告 函式模板可以用來建立乙個通用的函式,以支援多種不同的形參,避免過載函式的函式體重複設計。它的最大特點是把函式使用的資料型別作為引數。函式模板的宣告形式為 template 返回型別 函式名 參數列 其中,template是定義模板函式的關鍵字...