C 設計中的類模板和函式模板

2021-07-28 00:23:19 字數 1116 閱讀 8318

一、補充static

static 函式沒有this pointor  它只能用來處理靜態資料

class account

};double account::m_rate=8.0;//靜態資料在外面一定要寫這個

int main()

二、把ctors放在private 

class a

private:

a();

a(const a& ths);

static a a;

};//也可以這樣寫

class a

private:

a();

a(const a& ths);

};a& a::getinstance()

三、cout 補充(為啥它能接受各式各樣型別的列印)

cout的源**

可以說 cout屬於一種 ostream,然後ostream裡有各種各樣的函式,於是cout 可以接受各種型別的列印

四、class template,類模板

template//說明目前t還沒有繫結,不知道是什麼,於是下面的class成為了 class template

class complex

complex& operator += (const complex&);

t real () const

t imag () const

private:

t re, im;

frienf complex& _doapl(complex* const complex&);

};complexc1(2.5 , 1.5);

complexc2(2,6);

五、function template,函式模板

template

inline

const t& min(const t& a ,const t& b )

bool operator < (const stone& rhs) const;

stone r1(2,3),r2(3,3),r3;

r3=min(r1,r2);

六、namespace

namespace std  //指所有的東西被包裝在這個命名空間內

C 中的模板(函式模板,類模板)

1.模板是生成類或函式的框架,模板使用形參,當實際資料型別賦值給形參的時候,才由編譯器生成類或函式 2.函式模板的宣告由關鍵字template和包含乙個或多個資料型別形參的引數列表構成,形參資料型別 t 前面可以是class也可以是typename,型別形參t要用尖括號 括起來 template 或...

C 函式模板和類模板

一 函式模板 c 提供了函式模板 function template 所謂函式模板,實際上是建立乙個通用函式,其函式型別和形參型別不具體指定,用乙個虛擬的型別來代表。這個通用函式就稱為函式模板。凡是函式體相同的函式都可以用這個模板來代替,不必定義多個函式,只需在模板中定義一次即可。在呼叫函式時系統會...

函式模板和類模板(C )

所謂函式模板,實際上是建立乙個通用函式,其函式型別和形參型別不具體指定,用乙個虛擬的型別來代表。這個通用函式就稱為函式模板。函式模板和普通函式的區別 函式模板不允許自動型別轉化,普通函式能夠進行自動型別轉換 函式模板和普通函式在一起呼叫的規則 1 函式模板可以像普通函式一樣被過載 2 c 編譯器優先...