После нескольких лет кодирования в С++ сегодня мне задали простой вопрос, но я действительно не смог найти его ответ, и поэтому я ребята.
Кроме того, интересно, что почему эта ошибка происходит, я хочу знать , как, я могу решить ниже ошибку, изменив только функцию шаблона (без изменение функции main()
)
template <class T>
T Add(T first, T second)
{
return first + second;
}
int main()
{
auto sample_1 = Add(1, 2); // Works
auto sample_2 = Add(1.f, 2.f); // Works
auto sample_3 = Add(1.f, 2); // Error: no instance matches the argument types: (double, int)
return 0;
}