C ++プログラムのテンプレートの特殊化?
このチュートリアルでは、C++でのテンプレートの特殊化を理解するためのプログラムについて説明します。
sort()のような標準関数は、任意のデータ型で使用でき、それぞれで同じように動作します。ただし、特定のデータ型(ユーザー定義でも)に対して関数の特別な動作を設定する場合は、テンプレートの特殊化を使用できます。
例
#include <iostream> using namespace std; template <class T> void fun(T a) { cout << "The main template fun(): " << a << endl; } template<> void fun(int a) { cout << "Specialized Template for int type: " << a << endl; } int main(){ fun<char>('a'); fun<int>(10); fun<float>(10.14); return 0; }
出力
The main template fun(): a Specialized Template for int type: 10 The main template fun(): 10.14
-
C++のis_fundamentalテンプレート
この記事では、C++STLでのstd::is_fundamentalテンプレートの動作、構文、および例について説明します。 is_basicentalは、ヘッダーファイルの下にあるテンプレートです。このテンプレートは、指定されたタイプTが基本データタイプであるかどうかを確認するために使用されます。 基本タイプとは何ですか? 基本型は、コンパイラ自体ですでに宣言されている組み込み型です。 int、float、char、doubleなどのように。これらは組み込みデータ型とも呼ばれます。 クラス、列挙型、構造体、参照、ポインタなどのユーザー定義のすべてのデータ型は、基本型の一部ではありません。
-
C++でのテンプレートの特殊化
C ++では、テンプレートを使用して一般化された関数とクラスを作成します。したがって、int、char、floatなどの任意のタイプのデータ、またはテンプレートを使用するユーザー定義データを使用できます。 このセクションでは、テンプレートの特殊化の使用方法を説明します。これで、さまざまなタイプのデータ用に一般化されたテンプレートを定義できます。そして、特別なタイプのデータのためのいくつかの特別なテンプレート関数。より良いアイデアを得るためにいくつかの例を見てみましょう。 サンプルコード #include<iostream> using namespace std; templat