#include<iostream>
using namespace std;
template<class T>
void f(T &i)
{
    cout<<"1";
}
void f(const int&i)
{
    cout<<"2";
}
int main()
{
    f(7);
}
I have used a template function and a normal function. But the function with const int argument is executing when called. Why is that so?
 
    