Итак, я знаю, что есть разница между этими двумя лакомыми кусочками кода:
template <typename T>
T inc(const T& t)
{
return t + 1;
}
template <>
int inc(const int& t)
{
return t + 1;
}
и
template <typename T>
T inc(const T& t)
{
return t + 1;
}
int inc(const int& t)
{
return t + 1;
}
Я смущен тем, что функциональные различия между этими двумя. Может ли кто-нибудь показать некоторые ситуации, когда эти фрагменты действуют иначе друг от друга?