C ++ 03:テンプレートを使用してオン

テンプレートの役割I.

これは、C ++テンプレートのサポートで、通常は関数テンプレートおよびクラステンプレートと、ツールのパラメトリック多型

関数のパラメータのみのさまざまな種類の関数テンプレート

クラスの異なる種類のテンプレートクラスのデータメンバとメンバ関数

書くためのテンプレートや種類に依存しないコードを使用します

 

II。関数テンプレート

1.使用

テンプレート機能、着信パラメータ引数の種類に応じて置換されているテンプレート関数

//声明
テンプレート<クラスT> 
ボイドスワップ(T&、T&B){ 
    ... 
} 
 
テンプレート<型名T> 
ボイドスワップ(T&、T&B){ 
 
}

 

//コール
int型のA、B、
スワップ(A、B)。

 

2.例

注:テンプレート宣言は、関数に対応します

 

III。クラステンプレート

1.使用

パラメータの型を置き換えるために、クラスの特定の種類に応じて、テンプレートクラス、<>テンプレートクラス

//声明
テンプレート<クラスT> 
テンプレート<型名T> 
クラスA { 
   パブリック:
        T。
        T Bと、
    Tスワップ(T cとT&D)。
 
}。
 
//实现
T A <T> ::スワップ(T cとT&D){ 
... 
}
 

 

//调用
A <整数> A; 
<文字列> B;

 

2.例

テンプレート宣言は、クラスに対応し、異なるタイプをオーバーライドする:注意

//TestMain.h 
 
テンプレート<クラスT> 
クラスA { 
 
パブリック:
    (); 
    T G(T Aを、T b)は、
}。
 

 

テンプレート<クラスT> 
A <T> ::(){ 
 
} 
 
テンプレート<クラスT> 
T A <T> :: G(T Aを、T b)は、{ 
    + Bを返します。
} 
 
メイン(){int型
 
    A <整数>。
    std :: COUT << AG(1,2)<<はstd :: ENDL。
 
    システム(「一時停止」)。
    0を返します。
}

 

IV。一般的なプログラミングの原則

 

おすすめ

転載: www.cnblogs.com/k5bg/p/11118755.html