C ,類,模板雜談 Boolan

2021-07-27 09:41:51 字數 1231 閱讀 9391

conversion function轉換函式(把物件轉換為乙個其他的型別)

格式 operator 型別() const

//沒有返回值沒有引數

non-explicit-one-argument ctor(把其他型別資料物件轉換為類物件)

explicit用在建構函式,不允許自動轉化,函式轉物件,物件轉類

one-argument 只要乙個實參

所以與其相對應的有

與上兩種相比對

如果兩種同時存在則編譯出錯(主要取決於使用者怎麼去用)

例如:

pointer-like classes智慧型指標(像乙個指標比普通指標做更多的事情)

pointer-like classes裡面一定會有個真正的指標

->有個特殊的行為,會作用下去得到的結果,這個符號會繼續作用下去

迭代器(智慧型指標 pointer-like )

function-like classes,仿函式(過載小括號)

任何乙個東西如果能夠接受小括號這個操作符,則稱像函式

格式:返回值 operator()(形參){}

namespace作用是把一些東西區別開來

模板,class, function,member

泛化就是模板

特化,面對某些獨特的型別要做特別的處理

模板模板引數

引用一定要有初值

this

動態分配跟new/delete有關

當成員函式的const(全域性函式不可以)non-const版本同時存在,const物件只會(能)

呼叫const版本,non-const物件只會(能)呼叫non-const版本

c 模板雜談

實驗環境 linux mint 下 qt 5.11 說白了,模板就是搭個函式,類的框架,具體實現的時候往裡面填充內容,或者我們可以把型別名想作乙個佔位符號 include include using namespace std template type returnmax type x,type ...

c 類模板(模板類)

人們需要編寫多個形式和功能都相似的函式,因此有了函式模板來減少重複勞動 人們也需要編寫多個形式和功能都相似的類,於是 c 引人了類模板的概念,編譯器從類模板可以自動生成多個類,避免了程式設計師的重複勞動。有了類模板的機制,只需要寫乙個可變長的陣列類模板,編譯器就會由該類模板自動生成整型 double...

C 模板類和類模板

用相同的類模板可以組建任何型別的物件集合。在傳統c 中,可能有乙個浮點數類或者乙個整數類,如果使用類模板,可以定義乙個對兩者都適用的類number。類模板說明 類模板說明的一般形式是 template 型別形參表 class 類名 template 型別形參表 返回型別 類名 型別名錶 成員函式1 ...