C++のテンプレート

スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 |
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般

C++のテンプレート機能は、汎用的な関数を定義するために使われます。
テンプレートから関数個別のインスタンスを生成し、オーバーロードした関数のように扱うことができます。
template宣言での定義の仕方は、パラメータつきのマクロ定義のやり方と似ています。

スポンサーリンク

#include <iostream>
 
template<typename type>
type max(type d1, type d2) {
    if (d1 > d2)
        return (d1);
    return (d2);
}
 
int main() {
    float f = max(3.5, 8.7);
    int   i = max(100, 500);
    char ch = max('A', 'Q');
 
    std::cout << f << "\n";
    std::cout << i << "\n";
    std::cout << ch << "\n";
 
    return 0;
}

「template」で、typeの部分が、与えられた引数から型を決定します。
「float f = max(3.5, 8.7);」では、関数「max(float d1, float d2);」が使われることになります。
実行結果。

8.7
500
Q
スポンサーリンク
 
スポンサーリンク