関数テンプレートと一般関数の違い
1346 ワード
一、関数テンプレートと普通の関数が一緒に規則を呼び出す
1.関数テンプレートは、通常の関数のように再ロードすることができる.関数テンプレートと一般関数が呼び出し要求を満たす場合、c++コンパイラは一般関数3を優先する.関数テンプレートがより良い一致を生成できる場合は、テンプレート4を選択します.空のテンプレートの実パラメータリストを使用できる構文限定コンパイラは、テンプレートマッチングのみで使用できます.
二、example
1.例:例 例 例
1.関数テンプレートは、通常の関数のように再ロードすることができる.関数テンプレートと一般関数が呼び出し要求を満たす場合、c++コンパイラは一般関数3を優先する.関数テンプレートがより良い一致を生成できる場合は、テンプレート4を選択します.空のテンプレートの実パラメータリストを使用できる構文限定コンパイラは、テンプレートマッチングのみで使用できます.
二、example
1.例:
//1
template
void Print(T a){
cout << a << endl;
}
//2
template
void Print(T a, T b){
cout << a << " " << b << endl;
}
//
template
void Print(T a){
cout << a << endl;
}
//
void Print(int a)
{
cout << a << endl;
}
void test()
{
int tmp = 3;
double f = 2.2;
Print(tmp); //
Print(f); //
}
//
template
void Print(T a){
cout << a << endl;
}
//
void Print(int a)
{
cout << a << endl;
}
void test()
{
int tmp = 3;
double f = 2.2;
Print(tmp); //
Print(f); //
}
//
template
void Print(T a){
cout << a << endl;
}
//
void Print(int a)
{
cout << a << endl;
}
void test()
{
int tmp = 3;
Print(tmp); //
Print<>(tmp); //
}