上級 › テンプレートの型推論失敗で no matching function になる原因 › パターン4
テンプレートの型推論失敗で no matching function になる原因
テンプレート関数の2つの引数に異なる型を渡したときに出るエラーです。
1 #include <iostream> 2 template <typename T> 3 T sub(T a, T b) { 4 return a - b; 5 } 6 int main() { 7 std::cout << sub(9, ___) << std::endl; ^ 8 return 0; 9 }
main.cpp:7:21: error: no matching function for call to 'sub(int, const char [2])'
空欄を埋めてコンパイル・実行を通す
9はint、"3"はconst char*で型が異なるため、Tを1つに決められません。
次の問題