41 函式模板與類模板的使用
函式模板是一種不說明某些引數的資料型別的函式
,模板定義以關鍵字template開頭,關鍵字
class(
或typename)
表示其後的識別符號
t是模板引數(型別引數),用來指定函式模板
abs()
中引數val
的資料型別,隨後是函式模板
abs()
的定義。定義函式模板時,引數化的資料型別
t可以用來宣告函式的引數和返回值,在函式體中還可以用來宣告工作變數。
#include template //或寫成:template t abs(t val)
void main()
void main()
//型別引數t用於宣告成員函式的引數
t getx() //型別引數t用於宣告成員函式的返回值
};
在在模板類的外部定義模板類的成員函式,必須採用如下形式:
template //不能省略template模板宣告
mytemclass::setx(t a)
; 使用例子:
#include template //使用2個型別引數
class mytemclass //定義類模板
//建構函式
void showmax() //輸出最大的資料成員
c 知識總結
第一章節 1.類的兩種定義形式 1 在類中定義成員函式 2 在類之後定義成員函式 2.class 和struct的區別 1 c的struct沒有方法,而c 的struct可以有方法 函式 2 c的struct的成員沒有訪問許可權,c 的class則有,且預設許可權私有 3 c的struct並不能為空...
C 知識總結
c 總結 一丶運算子過載 1丶基本概念 將運算子看作是一種特殊的函式 運算元是函式的引數,運算結果是函式的返回值 2丶運算子函式 定義過載運算子和定義普通函式類似 函式名由關鍵字operator 和其後要定義的運算子組成 operator operator operator 返回型別 運算結果的型別...
C 知識總結
1.概念屬性 概念屬性,屬性就是物件具有的特徵值,每個物件具有的每個屬性都有特徵值。例如 年齡是 23 歲,性別是男等特徵,這個就是物件 的屬性及屬性值。2.物件與類 物件與類的區別 物件是實實在在存在的,具體到那個是物件 類是乙個模板而已,是虛構的,不存在的。比如我現在操作的這部電腦是戴爾電腦,就...