関数テンプレートは、さまざまなデータ型に適用できる関数を作成するためのツールです。型パラメーターを指定すると、関数テンプレートを作成し、そのテンプレートを使用して特定のデータ型の関数をインスタンス化できます。たとえば、2 つの値のうち大きい方を取得する max() テンプレート関数を作成し、maxbd43222e33876353aff11e13a7dc75f6(10, 20) または max229a20c20174f89abe8fab2ad31639d8(3.14, 2.71) を使用して、関数の最大値を簡単に見つけることができます。整数または浮動小数点数。あるいは、swap テンプレート関数を使用して 2 つの値を交換することもできます。たとえば、swap
C 関数テンプレート: 構文と使用法
関数テンプレートは、次のような関数を作成できる C の強力なツールです。さまざまなデータ型関数で使用されます。これにより、データ型ごとに重複したコードを記述することが回避されます。
構文
関数テンプレートの形式は次のとおりです:
template <typename T> returnType function_name(parameters) { // 函数体 }
Where:
#<typename T>
は、これが関数テンプレートであり、T が型パラメータであることを意味します。 returnType
は、関数によって返される型です。 function_name
は関数の名前です。 parameters
は、関数のパラメータのリストです。 使用方法
関数テンプレートを使用するには、型パラメータを指定する必要があります。たとえば、次のコードでは、テンプレートを使用して max()
関数を作成し、2 つの整数の最大値を検索します。
template <typename T> T max(T a, T b) { if (a > b) { return a; } else { return b; } }
max()
を使用できます。次の方法で関数を実行します。 :
int max_value = max<int>(10, 20); // 20 double max_value = max<double>(3.14, 2.71); // 3.14
実際のケース: 交換関数
次は、関数テンプレートを使用して 2 つの値を交換する関数を実装する実際のケースです:
template <typename T> void swap(T &a, T &b) { T temp = a; a = b; b = temp; }
使用:
int a = 5; int b = 10; swap(a, b); cout << "a: " << a << endl; // 输出 10 cout << "b: " << b << endl; // 输出 5
以上がC++ 関数テンプレートの構文と使用法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。