C/C++ Programming - Template
About template
テンプレートについて テンプレート機能は 入出力用の型を固定しない 汎用的な関数とかクラスを作成するのに使います。 例 int型、float型を 受け付けるSum関数を作成します Sumという関数の実装は一つだけど 下のような使い方ができます (int型) = Sum(int型の値1, int型の値2) (float型) = Sum(float型の値1, float型の値2)
example
#include <stdio.h> template <class Type> Type Sum(Type a, Type b) { return a + b; } template int Sum(int, int); template float Sum(float, float); int main(void) { int iNum1 = 3; int iNum2 = 5; float dNum1 = 3.5; float dNum2 = 1.0; printf("%d + %d = %d\n", iNum1, iNum2, Sum(iNum1, iNum2)); printf("%.1f + %.1f = %.1f\n", dNum1, dNum2, Sum(dNum1, dNum2)); return 0; } ソースおわり
実行結果
3 + 5 = 8 3.5 + 1.0 = 4.5