c++,テンプレート関数の使い方について
1,テンプレート関数でtype f<double,int>(double a,int b)
という関数を作り戻り値の型をtype型にしたいのですがどうすればいいのでしょうか?
2,また、テンプレートの特殊化で引数の型が違う型を二つ取ろうとうするとエラーになりますその場合はどのようにすれば解決できるのでしょうか?
3,テンプレート関数の明示的特殊化と、テンプレート関数の使い分けを教えてほしいです。
template<typename type,typename typeb> type f(type a,typeb b) {
cout << "テンプレート関数\n";
return 3.14;
}
//ここです、↓指定された引数と一致するテンプレート関数fのインスタンスがりません
template<> int f<double, int>(double a,int b){ return 4;}
int main() {
double x = 3.14 + 2;
//cout << func(3.14);
//cout << x;
cout << f<double,int>(3.14,123);
_getch();
return 0;
}